From afb0260f50f41fa72f8447fdb84f8d907a725fe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jeremy=20Lain=C3=A9?= Date: Tue, 4 Sep 2012 16:04:19 +0200 Subject: Fix QTest::qExec crash with no command line arguments The documentation for QTest::qExec states that command line arguments are optional and gives the following example: MyTestObject test1; QTest::qExec(&test1); However, running this example leads to crash as argv[0] is accessed without testing argc. This change fixes this bug. Change-Id: I2ec016e02869d21b24bc11f1851a760036640191 Reviewed-by: Thiago Macieira Reviewed-by: Jason McDonald --- src/testlib/qtestcase.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index 3bd6848e13..11d7f68399 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -2114,7 +2114,8 @@ int QTest::qExec(QObject *testObject, int argc, char **argv) QTEST_ASSERT(metaObject); QTestResult::setCurrentTestObject(metaObject->className()); - QTestResult::setCurrentAppname(argv[0]); + if (argc > 0) + QTestResult::setCurrentAppname(argv[0]); qtest_qParseArgs(argc, argv, false); -- cgit v1.2.3