Remove Q_ASSERT from qcopchannel autotest
authorJason McDonald <jason.mcdonald@nokia.com>
Wed, 20 Apr 2011 05:11:23 +0000 (15:11 +1000)
committerRohan McGovern <rohan.mcgovern@nokia.com>
Wed, 18 May 2011 00:46:41 +0000 (10:46 +1000)
This code would assert in a debug build and potentially crash in a
release build. (The behaviour of QStringList::at() with an out-of-bounds
index is undefined.) This commit makes the program exit with a useful
error message in all builds.

Change-Id: Ia57a2e5693eb25d3eb0b9ba701ed485dfbc1e846
Task-number: QTBUG-17582
Reviewed-by: Rohan McGovern
(cherry picked from commit 5a530f6171a9569d1a35cd8cd1015ec796b048cc)

tests/auto/qcopchannel/testSend/main.cpp

index 91628e5..a56883b 100644 (file)
@@ -49,7 +49,11 @@ int main(int argc, char** argv)
 #ifdef Q_WS_QWS
     QApplication app(argc, argv);
     QStringList args = app.arguments();
-    Q_ASSERT(args.count() ==  3 || args.count() == 4);
+    if (args.count() != 3 && args.count() != 4) {
+        fprintf(stdout,qPrintable(QString("Usage: %1 channel message [data]").arg(args.at(0))));
+        fflush(stdout);
+        return 1;
+    }
     QString channelName = args.at(1);
     QString msg = args.at(2);
     QByteArray data;