diff options
author | Eike Rathke <erack@redhat.com> | 2013-10-29 00:50:46 +0100 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2013-10-29 00:51:32 +0100 |
commit | 2830bf9af9a640e1c484b959ee2dcbe1aeabb0f6 (patch) | |
tree | 38633050bbafa74678ccdffacce892c6ec3ee556 /i18npool | |
parent | 20e0afa76087e20f95247406d265a122263a8c6f (diff) |
iterateCodePoints() on empty string is no good anymore
Change-Id: Id2ddbbff90f3cd32c03c7623af6d458717c7e8a8
Diffstat (limited to 'i18npool')
-rw-r--r-- | i18npool/source/localedata/LocaleNode.cxx | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/i18npool/source/localedata/LocaleNode.cxx b/i18npool/source/localedata/LocaleNode.cxx index 905df2e56b0c..b71e769008c2 100644 --- a/i18npool/source/localedata/LocaleNode.cxx +++ b/i18npool/source/localedata/LocaleNode.cxx @@ -1217,19 +1217,23 @@ void LCFormatNode::generateCode (const OFileWriter &of) const } // Rudimentary check if a pattern interferes with decimal number. - nIndex = 0; - sal_uInt32 cDecSep = aDecSep.iterateCodePoints( &nIndex); - for (vector<OUString>::const_iterator aIt = theDateAcceptancePatterns.begin(); - aIt != theDateAcceptancePatterns.end(); ++aIt) + // But only if not inherited in which case we don't have aDecSep here. + if (!aDecSep.isEmpty()) { - if ((*aIt).getLength() == (cDecSep <= 0xffff ? 3 : 4)) + nIndex = 0; + sal_uInt32 cDecSep = aDecSep.iterateCodePoints( &nIndex); + for (vector<OUString>::const_iterator aIt = theDateAcceptancePatterns.begin(); + aIt != theDateAcceptancePatterns.end(); ++aIt) { - nIndex = 1; - if ((*aIt).iterateCodePoints( &nIndex) == cDecSep) + if ((*aIt).getLength() == (cDecSep <= 0xffff ? 3 : 4)) { - ++nError; - fprintf( stderr, "Error: Date acceptance pattern '%s' matches decimal number '#%s#'\n", - OSTR( *aIt), OSTR( aDecSep)); + nIndex = 1; + if ((*aIt).iterateCodePoints( &nIndex) == cDecSep) + { + ++nError; + fprintf( stderr, "Error: Date acceptance pattern '%s' matches decimal number '#%s#'\n", + OSTR( *aIt), OSTR( aDecSep)); + } } } } |