qtbase/util/locale_database
Edward Welbourne b37c580169 Add terminal rows to various QtTimeZoneLocale tables
This fixes some read-past-end issues in assertions that verify the
next row of a table after the last for a specific locale belong to a
later locale. Since those assertions happen without sight of the table
of which the locale's range is a part, they can't tell when the
range's end is in fact the table's end - so they shouldn't have been
reading from a row there. Fix by putting a row there, that belongs to
a nominal locale with index out of range.

Pick-to: 6.9
Change-Id: Ib9d227ca4f86c372c13f963a08a8d637eae63ed0
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
2025-02-10 14:59:36 +01:00
..
2025-01-06 18:56:19 +01:00
2025-01-06 18:56:19 +01:00
2022-05-16 16:37:38 +02:00
2025-01-29 16:53:08 +01:00

locale_database is used to generate qlocale data from CLDR.

CLDR is the Common Locale Data Repository, a database for localized
data (like date formats, country names etc).  It is provided by the
Unicode consortium.

See cldr2qlocalexml.py for how to run it and qlocalexml2cpp.py to
update the locale data tables (principally text/qlocale_data_p.h,
time/q*calendar_data_p.h and time/qtimezone*_data_p.h under
src/corelib/). See enumdata.py and zonedata.py for when and how to
update the data they provide. You shall definitely need to pass
--no-verify or -n to git commit for these changes.

NOTE: on Windows it is advisable to set the environment variable
PYTHONUTF8 to 1 before running the scripts to avoid encoding errors.