summaryrefslogtreecommitdiffstats
path: root/src/corelib/text/qcollator_win.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/text/qcollator_win.cpp')
-rw-r--r--src/corelib/text/qcollator_win.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/corelib/text/qcollator_win.cpp b/src/corelib/text/qcollator_win.cpp
index 45cf5488ad..b588f5ff46 100644
--- a/src/corelib/text/qcollator_win.cpp
+++ b/src/corelib/text/qcollator_win.cpp
@@ -57,8 +57,7 @@ int QCollator::compare(QStringView s1, QStringView s2) const
if (d->isC())
return s1.compare(s2, d->caseSensitivity);
- if (d->dirty)
- d->init();
+ d->ensureInitialized();
//* from Windows documentation *
// Returns one of the following values if successful. To maintain the C
@@ -92,11 +91,12 @@ int QCollator::compare(QStringView s1, QStringView s2) const
QCollatorSortKey QCollator::sortKey(const QString &string) const
{
- if (d->dirty)
- d->init();
+ d->ensureInitialized();
+
if (d->isC())
return QCollatorSortKey(new QCollatorSortKeyPrivate(string));
+ // truncating sizes (QTBUG-105038)
int size = LCMapStringW(d->localeID, LCMAP_SORTKEY | d->collator,
reinterpret_cast<const wchar_t*>(string.constData()), string.size(),
0, 0);