diff --git a/src/plugins/qnx/qnxversionnumber.cpp b/src/plugins/qnx/qnxversionnumber.cpp
index 15650ac82a871e28242cb840f2985e6dbcfbd79e..80a5c011f9dae30d574432a70b3573083de56642 100644
--- a/src/plugins/qnx/qnxversionnumber.cpp
+++ b/src/plugins/qnx/qnxversionnumber.cpp
@@ -73,10 +73,12 @@ bool QnxVersionNumber::operator >(const QnxVersionNumber &b) const
                 int aInt = aParts[j].toInt(&aOk);
                 int bInt = bParts[j].toInt(&bOk);
 
-                if (aOk && bOk)
+                if (aOk && bOk && (aInt != bInt))
                     return aInt > bInt;
 
-                return aParts[j].compare(bParts[j]) > 0;
+                int compare = aParts[j].compare(bParts[j]);
+                if (compare != 0)
+                    return compare > 0;
             }
         }
     }