Hi Andras, On Tuesday, 2012-01-03 20:09:42 +0100, Andras Timar wrote:
diff --git a/l10ntools/source/export.cxx b/l10ntools/source/export.cxx @@ -1475,7 +1475,7 @@ void Export::InsertListEntry( const ByteString &rText, const ByteString &rLine ) (*pCurEntry)[ SOURCE_LANGUAGE ] = rLine; } else - (*pCurEntry)[ SOURCE_LANGUAGE ] = rLine; + (*pCurEntry)[ SOURCE_LANGUAGE ] = rText; pList->NewSourceLanguageListEntry(); } Your opinion ?Makes sense, especially when seen with context of the block immediately above: // For paired list use the line to set proper lid if( nList == LIST_PAIRED ){ (*pCurEntry)[ m_sListLang ] = rLine; }else (*pCurEntry)[ m_sListLang ] = rText;On the other hand, if it changes the behaviour that we got used to, it may break localizations. I'd prefer to have a full code analysis.
Fair enough. Let's see.. we are in
void Export::InsertListEntry( const ByteString &rText, const ByteString &rLine )
that's called from Export::Execute() where rLine contains the entire
resource line and rText the translatable text extracted.
For paired lists the entire line is added as an entry to
(*pCurEntry)[m_sListLang] that contains brackets, pair.first (the
translatable text), pair.second (usually a defined named numeric
constant) and separators, e.g.
< "Text" ; NAME ; > ;
For Export::isSourceLanguage(m_sListLang) (read: m_sListLang equals
"en-US") then (*pCurEntry)[SOURCE_LANGUAGE] is set to the entire line
where SOURCE_LANGUAGE=="en-US", effectively overwriting the previous
(*pCurEntry)[m_sListLang], no matter if it's a paired list or something
else.
If it's not a paired list's entry the line may look like
"Text" ;
Maybe you can squeeze some sense out of that ;-)
If the current behavior is to remain, then
if ( Export::isSourceLanguage( m_sListLang ) ) {
- if( nList == LIST_PAIRED ){
- (*pCurEntry)[ SOURCE_LANGUAGE ] = rLine;
- }
- else
- (*pCurEntry)[ SOURCE_LANGUAGE ] = rLine;
+ (*pCurEntry)[ SOURCE_LANGUAGE ] = rLine;
pList->NewSourceLanguageListEntry();
}
would do.
Eike
--
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3 9E96 2F1A D073 293C 05FD
Attachment:
pgpZJ6aww75jO.pgp
Description: PGP signature