summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--l10ntools/source/lngmerge.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/l10ntools/source/lngmerge.cxx b/l10ntools/source/lngmerge.cxx
index 6541bd9ab2ba..3a7a8d5f731e 100644
--- a/l10ntools/source/lngmerge.cxx
+++ b/l10ntools/source/lngmerge.cxx
@@ -271,7 +271,8 @@ sal_Bool LngParser::Merge(
rtl::OString sText1( sLang );
sText1 += " = \"";
- sText1 += sNewText;
+ // escape quotes, unescape double escaped quotes fdo#56648
+ sText1 += sNewText.replaceAll("\"","\\\"").replaceAll("\\\\\"","\\\"");
sText1 += "\"";
*pLine = sText1;
Text[ sLang ] = sNewText;
@@ -306,7 +307,8 @@ sal_Bool LngParser::Merge(
rtl::OString sLine;
sLine += sCur;
sLine += " = \"";
- sLine += sNewText;
+ // escape quotes, unescape double escaped quotes fdo#56648
+ sLine += sNewText.replaceAll("\"","\\\"").replaceAll("\\\\\"","\\\"");
sLine += "\"";
nLastLangPos++;