OSDN Git Service

fix decomposition of certain characters
authorIvailo Monev <xakepa10@laimg.moc>
Sat, 14 Dec 2019 23:25:15 +0000 (23:25 +0000)
committerIvailo Monev <xakepa10@laimg.moc>
Sat, 14 Dec 2019 23:25:15 +0000 (23:25 +0000)
unorm2_getDecomposition() is supposedly independent of the UNormalizer2
instance according to its documentation, apparently not

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
src/core/tools/qchar.cpp

index 1cc1478..aeac441 100644 (file)
@@ -1171,9 +1171,9 @@ QString QChar::decomposition() const
 QString QChar::decomposition(const uint ucs4)
 {
     UErrorCode errorcode = U_ZERO_ERROR;
-    const UNormalizer2 *normalizer = unorm2_getNFDInstance(&errorcode);
+    const UNormalizer2 *normalizer = unorm2_getNFKDInstance(&errorcode);
     if (Q_UNLIKELY(U_FAILURE(errorcode))) {
-        qWarning("QChar::decomposition: %s", u_errorName(errorcode));
+        qWarning("QChar::decomposition: unorm2_getNFKDInstance() failed %s", u_errorName(errorcode));
         return QString();
     }
 
@@ -1187,7 +1187,7 @@ QString QChar::decomposition(const uint ucs4)
     }
 
     if (Q_UNLIKELY(U_FAILURE(errorcode))) {
-        qWarning("QChar::decomposition: %s", u_errorName(errorcode));
+        qWarning("QChar::decomposition: unorm2_getDecomposition() failed %s", u_errorName(errorcode));
         return QString();
     }