summaryrefslogtreecommitdiffstats
path: root/src/testlib/qtestresult.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/testlib/qtestresult.cpp')
-rw-r--r--src/testlib/qtestresult.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/testlib/qtestresult.cpp b/src/testlib/qtestresult.cpp
index 859f6743cd..8eb1fa2d9c 100644
--- a/src/testlib/qtestresult.cpp
+++ b/src/testlib/qtestresult.cpp
@@ -49,7 +49,6 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
-#include <wchar.h>
static const char *currentAppName = 0;
@@ -257,10 +256,11 @@ bool QTestResult::compare(bool success, const char *failureMsg,
QTEST_ASSERT(expected);
QTEST_ASSERT(actual);
- char msg[1024];
+ const size_t maxMsgLen = 1024;
+ char msg[maxMsgLen];
if (QTestLog::verboseLevel() >= 2) {
- qsnprintf(msg, 1024, "QCOMPARE(%s, %s)", actual, expected);
+ qsnprintf(msg, maxMsgLen, "QCOMPARE(%s, %s)", actual, expected);
QTestLog::info(msg, file, line);
}
@@ -268,16 +268,17 @@ bool QTestResult::compare(bool success, const char *failureMsg,
failureMsg = "Compared values are not the same";
if (success && QTest::expectFailMode) {
- qsnprintf(msg, 1024, "QCOMPARE(%s, %s) returned TRUE unexpectedly.", actual, expected);
+ qsnprintf(msg, maxMsgLen,
+ "QCOMPARE(%s, %s) returned TRUE unexpectedly.", actual, expected);
} else if (val1 || val2) {
- size_t len1 = mbstowcs(NULL, actual, 0);
- size_t len2 = mbstowcs(NULL, expected, 0);
- qsnprintf(msg, 1024, "%s\n Actual (%s)%*s %s\n Expected (%s)%*s %s",
+ size_t len1 = mbstowcs(NULL, actual, maxMsgLen); // Last parameter is not ignored on QNX
+ size_t len2 = mbstowcs(NULL, expected, maxMsgLen); // (result is never larger than this).
+ qsnprintf(msg, maxMsgLen, "%s\n Actual (%s)%*s %s\n Expected (%s)%*s %s",
failureMsg,
actual, qMax(len1, len2) - len1 + 1, ":", val1 ? val1 : "<null>",
expected, qMax(len1, len2) - len2 + 1, ":", val2 ? val2 : "<null>");
} else
- qsnprintf(msg, 1024, "%s", failureMsg);
+ qsnprintf(msg, maxMsgLen, "%s", failureMsg);
delete [] val1;
delete [] val2;