summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--l10ntools/source/stringmerge.cxx24
1 files changed, 24 insertions, 0 deletions
diff --git a/l10ntools/source/stringmerge.cxx b/l10ntools/source/stringmerge.cxx
index d6ffbc67062f..7cc5d0100c7b 100644
--- a/l10ntools/source/stringmerge.cxx
+++ b/l10ntools/source/stringmerge.cxx
@@ -159,6 +159,30 @@ void StringParser::Merge(
}
}
+ for( xmlNodePtr pCurrent = pRootNode->children; pCurrent; )
+ {
+ if (!xmlStrcmp(pCurrent->name, (const xmlChar*)("string")))
+ {
+ xmlChar* pTranslatable = xmlGetProp(pCurrent, (const xmlChar*)("translatable"));
+ if (!xmlStrcmp(pTranslatable, (const xmlChar*)("false")))
+ {
+ xmlNodePtr pNonTranslatable = pCurrent;
+ pCurrent = pCurrent->next;
+ xmlUnlinkNode( pNonTranslatable );
+ xmlFreeNode( pNonTranslatable );
+ }
+ else
+ {
+ pCurrent = pCurrent->next;
+ }
+ xmlFree( pTranslatable );
+ }
+ else
+ {
+ pCurrent = pCurrent->next;
+ }
+ }
+
delete pMergeDataFile;
xmlSaveFile( rDestinationFile.getStr(), m_pSource );
xmlFreeDoc( m_pSource );