summaryrefslogtreecommitdiff
path: root/l10ntools
diff options
context:
space:
mode:
authorThorsten Behrens <tbehrens@suse.com>2013-02-11 15:05:43 +0100
committerMiklos Vajna <vmiklos@suse.cz>2013-02-11 15:13:44 +0100
commit768a72217e1d5b5253855b6e98adefdf7bf6973e (patch)
treeca5f7b680e20dfd62ee70a10a2865885d488b672 /l10ntools
parente815a69fcb28e3e1e4e89496ab42bc1b4bac4526 (diff)
More quote escaping on translated strings.
Also escape single quotes for ulf, escape both double and single quotes for stringex. Change-Id: I4c9b8ea88c0172e0d2fdbc79c68bce34668a64f7 (cherry picked from commit 049cf7c753339f761cd49b83744abab6aa820ea4) Signed-off-by: Miklos Vajna <vmiklos@suse.cz>
Diffstat (limited to 'l10ntools')
-rw-r--r--l10ntools/source/lngmerge.cxx4
-rw-r--r--l10ntools/source/stringmerge.cxx1
2 files changed, 3 insertions, 2 deletions
diff --git a/l10ntools/source/lngmerge.cxx b/l10ntools/source/lngmerge.cxx
index 71f68effccdf..812c43667b35 100644
--- a/l10ntools/source/lngmerge.cxx
+++ b/l10ntools/source/lngmerge.cxx
@@ -269,7 +269,7 @@ sal_Bool LngParser::Merge(
rtl::OString sText1( sLang );
sText1 += " = \"";
// escape quotes, unescape double escaped quotes fdo#56648
- sText1 += sNewText.replaceAll("\"","\\\"").replaceAll("\\\\\"","\\\"");
+ sText1 += sNewText.replaceAll("\"","\\\"").replaceAll("\\\\\"","\\\"").replaceAll("\'","\\\'").replaceAll("\\\\\'","\\\'");
sText1 += "\"";
*pLine = sText1;
Text[ sLang ] = sNewText;
@@ -307,7 +307,7 @@ sal_Bool LngParser::Merge(
sLine += sCur;
sLine += " = \"";
// escape quotes, unescape double escaped quotes fdo#56648
- sLine += sNewText.replaceAll("\"","\\\"").replaceAll("\\\\\"","\\\"");
+ sLine += sNewText.replaceAll("\"","\\\"").replaceAll("\\\\\"","\\\"").replaceAll("\'","\\\'").replaceAll("\\\\\'","\\\'");
sLine += "\"";
nLastLangPos++;
diff --git a/l10ntools/source/stringmerge.cxx b/l10ntools/source/stringmerge.cxx
index 71909d9dbe72..26aabcb12e40 100644
--- a/l10ntools/source/stringmerge.cxx
+++ b/l10ntools/source/stringmerge.cxx
@@ -161,6 +161,7 @@ void StringParser::Merge(
{
OString sNewText;
pEntrys->GetText( sNewText, STRING_TYP_TEXT, m_sLang );
+ sNewText = sNewText.replaceAll("\"","&quot;").replaceAll("\\\\\"","\\\"").replaceAll("\'","&apos;").replaceAll("\\\\\'","\\\'");
xmlNodeSetContent(
pCurrent,
xmlEncodeSpecialChars( NULL,