# HG changeset patch # User Sebastian Brannstrom # Date 1287239779 -3600 # Node ID 03e8cc4066baa46f1fd6850ae167662e79a5eb58 # Parent 53d9fa8ea3b30ac43221ace177c67fc7f639bc7f Fix for bug 2818 diff -r 53d9fa8ea3b3 -r 03e8cc4066ba engine/src/PodcastUtils.cpp --- a/engine/src/PodcastUtils.cpp Wed Jul 28 14:19:14 2010 +0100 +++ b/engine/src/PodcastUtils.cpp Sat Oct 16 15:36:19 2010 +0100 @@ -68,12 +68,13 @@ EXPORT_C void PodcastUtils::CleanHtmlL(TDes &str) { - + DP("PodcastUtils::CleanHtmlL BEGIN"); if (str.Length() == 0) { return; } + DP(" miscellaneous"); // miscellaneous cleanup const TChar KLineBreak(CEditableText::ELineBreak); _LIT(KNewLine, "\n"); @@ -81,6 +82,7 @@ ReplaceString(str, KNewLine, KNullDesC); ReplaceString(str, KNewLineWindows, KNullDesC); + DP(" strip HTML"); // strip out HTML tags TInt startPos = str.Locate('<'); @@ -114,6 +116,7 @@ endPos = str.Locate('>'); } + DP(" change HTML encoded chars to unicode"); // change HTML encoded chars to unicode startPos = str.Locate('&'); endPos = str.Locate(';'); @@ -204,21 +207,26 @@ CleanupStack::PopAndDestroy(tmpBuf); + DP(" trim"); if(str.Length()>1) { + DP1("str.Length() ==%d", str.Length()); // chop away newlines at start - while ((str[0] == KLineBreak) ) { + while (str.Length() && (str[0] == KLineBreak)) { + DP("mid"); str = str.Mid(1); } // chop away newlines at end - while ((str[str.Length()-1] == KLineBreak)) { + while (str.Length() && (str[str.Length()-1] == KLineBreak)) { + DP("left"); str = str.Left(str.Length()-1); } str.Trim(); } + DP("PodcastUtils::CleanHtmlL END"); } EXPORT_C void PodcastUtils::RemoveAllFormatting(TDes & aString)