diff options
author | Eike Rathke <erack@redhat.com> | 2015-06-03 15:37:59 +0200 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2015-06-03 15:48:48 +0200 |
commit | 6df46d63e4397a0eb799149dab56a4c38b940e99 (patch) | |
tree | 2d0d9cab37c7be507ab1c1c80666263d6b11946b /i18npool/source | |
parent | c681c4ca956bfa4a3235c5ae97a745a107f4e4ce (diff) |
ensure that at least one abbreviated DateAcceptancePattern is present
Change-Id: I30619fc9f894dda89cd1c84153abcb21214a5fbc
Diffstat (limited to 'i18npool/source')
-rw-r--r-- | i18npool/source/localedata/LocaleNode.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/i18npool/source/localedata/LocaleNode.cxx b/i18npool/source/localedata/LocaleNode.cxx index 3b07bb7792da..d088dbe2b0d8 100644 --- a/i18npool/source/localedata/LocaleNode.cxx +++ b/i18npool/source/localedata/LocaleNode.cxx @@ -896,6 +896,22 @@ void LCFormatNode::generateCode (const OFileWriter &of) const // LC_FORMAT, not in optional LC_FORMAT_1 if (mnSection == 0) { + // At least one abbreviated date acceptance pattern must be present. + if (theDateAcceptancePatterns.empty()) + incError( "No DateAcceptancePattern present.\n"); + else + { + bool bHaveAbbr = false; + for (::std::vector< OUString >::const_iterator it( theDateAcceptancePatterns.begin()); + !bHaveAbbr && it != theDateAcceptancePatterns.end(); ++it) + { + if ((*it).indexOf('D') > -1 && (*it).indexOf('M') > -1 && (*it).indexOf('Y') <= -1) + bHaveAbbr = true; + } + if (!bHaveAbbr) + incError( "No abbreviated DateAcceptancePattern present. For example M/D or D.M.\n"); + } + // 0..47 MUST be present, 48,49 MUST NOT be present ValueSet::const_iterator aIter( aFormatIndexSet.begin()); for (sal_Int16 nNext = cssi::NumberFormatIndex::NUMBER_START; |