OSDN Git Service

correct qstricmp() return value checks in QTextStreamPrivate::getReal()
authorIvailo Monev <xakepa10@gmail.com>
Mon, 20 Sep 2021 22:02:07 +0000 (01:02 +0300)
committerIvailo Monev <xakepa10@gmail.com>
Mon, 20 Sep 2021 22:02:07 +0000 (01:02 +0300)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
src/core/io/qtextstream.cpp

index 7d6af56..114aa05 100644 (file)
@@ -1856,13 +1856,13 @@ bool QTextStreamPrivate::getReal(double *f)
     // for some reason. QLocale only checks for lower-case
     // nan/+inf/-inf, so here we also check for uppercase and mixed
     // case versions.
-    if (!qstricmp(buf, "nan") || !qstricmp(buf, "+nan") || !qstricmp(buf, "-nan")) {
+    if (qstricmp(buf, "nan") == 0 || qstricmp(buf, "+nan") == 0 || qstricmp(buf, "-nan") == 0) {
         *f = qSNaN();
         return true;
-    } else if (!qstricmp(buf, "+inf") || !qstricmp(buf, "inf")) {
+    } else if (qstricmp(buf, "+inf") == 0 || qstricmp(buf, "inf") == 0) {
         *f = qInf();
         return true;
-    } else if (!qstricmp(buf, "-inf")) {
+    } else if (qstricmp(buf, "-inf") == 0) {
         *f = -qInf();
         return true;
     }