summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMuhammet Kara <muhammet.kara@pardus.org.tr>2018-09-13 14:59:28 +0300
committerAndras Timar <andras.timar@collabora.com>2018-09-14 13:13:22 +0200
commit6aeb24b12a5df389f4239b2b0822d90cb3796001 (patch)
treec5d629190d3d08163e13a86c6bf8ac13a1ad4e58
parent8bd58609f49179dd817b3833b7f0471616a9cf2f (diff)
tdf#118881: Fix HTML parsing for personas
This is just a band-aid to make personas feature work again. Change-Id: I80b54fe9a8ddc93d93744fcf2c7f739d81f6face Reviewed-on: https://gerrit.libreoffice.org/60432 Tested-by: Jenkins Reviewed-by: Heiko Tietze <tietze.heiko@gmail.com> Tested-by: Heiko Tietze <tietze.heiko@gmail.com> Reviewed-by: Muhammet Kara <muhammet.kara@pardus.org.tr> (cherry picked from commit e98ac43ec42ff398ad489d6719960d595f0327be) Reviewed-on: https://gerrit.libreoffice.org/60468 Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> (cherry picked from commit 2f52a8e0f1098a51631434129707cfb0b60fecb3) Reviewed-on: https://gerrit.libreoffice.org/60481 (cherry picked from commit 6a113caf17974eb07a9f06ef09b1b1737d4d07bc)
-rw-r--r--cui/source/options/personalization.cxx18
1 files changed, 9 insertions, 9 deletions
diff --git a/cui/source/options/personalization.cxx b/cui/source/options/personalization.cxx
index dab788d8b824..478be7d99193 100644
--- a/cui/source/options/personalization.cxx
+++ b/cui/source/options/personalization.cxx
@@ -550,14 +550,14 @@ static OUString searchValue( const OString &rBuffer, sal_Int32 from, const OStri
where += rIdentifier.getLength();
- sal_Int32 end = rBuffer.indexOf( "&#34;", where );
+ sal_Int32 end = rBuffer.indexOf( "\"", where );
if ( end < 0 )
return OUString();
OString aOString( rBuffer.copy( where, end - where ) );
OUString aString( aOString.getStr(), aOString.getLength(), RTL_TEXTENCODING_UTF8, OSTRING_TO_OUSTRING_CVTFLAGS );
- return aString.replaceAll( "\\/", "/" );
+ return aString.replaceAll( "\\u002F", "/" );
}
/// Parse the Persona web page, and find where to get the bitmaps + the color values.
@@ -569,32 +569,32 @@ static bool parsePersonaInfo( const OString &rBufferArg, OUString *pHeaderURL, O
// let's replace the whole buffer with last one so we can treat it easily
OString rBuffer = rBufferArg.replaceAll(OString("&quot;"), OString("&#34;"));
// it is the first attribute that contains "persona="
- sal_Int32 persona = rBuffer.indexOf( "data-browsertheme=\"{" );
+ sal_Int32 persona = rBuffer.indexOf( "\"type\":\"persona\"" );
if ( persona < 0 )
return false;
// now search inside
- *pHeaderURL = searchValue( rBuffer, persona, "&#34;headerURL&#34;:&#34;" );
+ *pHeaderURL = searchValue( rBuffer, persona, "\"headerURL\":\"" );
if ( pHeaderURL->isEmpty() )
return false;
- *pFooterURL = searchValue( rBuffer, persona, "&#34;footerURL&#34;:&#34;" );
+ *pFooterURL = searchValue( rBuffer, persona, "\"footerURL\":\"" );
if ( pFooterURL->isEmpty() )
return false;
- *pTextColor = searchValue( rBuffer, persona, "&#34;textcolor&#34;:&#34;" );
+ *pTextColor = searchValue( rBuffer, persona, "\"textcolor\":\"" );
if ( pTextColor->isEmpty() )
return false;
- *pAccentColor = searchValue( rBuffer, persona, "&#34;accentcolor&#34;:&#34;" );
+ *pAccentColor = searchValue( rBuffer, persona, "\"accentcolor\":\"" );
if ( pAccentColor->isEmpty() )
return false;
- *pPreviewURL = searchValue( rBuffer, persona, "&#34;previewURL&#34;:&#34;" );
+ *pPreviewURL = searchValue( rBuffer, persona, "\"previewURL\":\"" );
if ( pPreviewURL->isEmpty() )
return false;
- *pName = searchValue( rBuffer, persona, "&#34;name&#34;:&#34;" );
+ *pName = searchValue( rBuffer, persona, "\"name\":\"" );
return !pName->isEmpty();
}