summaryrefslogtreecommitdiffstats
path: root/tests/auto/qbluetoothtransfermanager
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2014-10-13 10:43:44 +0200
committerAlex Blasche <alexander.blasche@digia.com>2014-10-13 11:40:08 +0200
commit4accb03289285610928199e9ab50ea2620d5e3d8 (patch)
tree361e598ef3341074911b2b86d6298872af3fb573 /tests/auto/qbluetoothtransfermanager
parent9b6d7408bc294d7e0b7d4c2791c4c07a889a009c (diff)
Catch segfault when passing 0 to QBluetoothTransferManager::put()
Change-Id: I8c659233fd6eb2232d7bd9d904ce14f1de8a9d34 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Diffstat (limited to 'tests/auto/qbluetoothtransfermanager')
-rw-r--r--tests/auto/qbluetoothtransfermanager/tst_qbluetoothtransfermanager.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/auto/qbluetoothtransfermanager/tst_qbluetoothtransfermanager.cpp b/tests/auto/qbluetoothtransfermanager/tst_qbluetoothtransfermanager.cpp
index b2c55da5..b39e6292 100644
--- a/tests/auto/qbluetoothtransfermanager/tst_qbluetoothtransfermanager.cpp
+++ b/tests/auto/qbluetoothtransfermanager/tst_qbluetoothtransfermanager.cpp
@@ -84,6 +84,8 @@ private slots:
void tst_sendBuffer_data();
void tst_sendBuffer();
+
+ void tst_sendNullPointer();
private:
QBluetoothAddress remoteAddress;
};
@@ -344,6 +346,20 @@ void tst_QBluetoothTransferManager::tst_sendBuffer()
QVERIFY(!reply->isRunning());
}
+void tst_QBluetoothTransferManager::tst_sendNullPointer()
+{
+ QBluetoothTransferRequest request(remoteAddress);
+ QBluetoothTransferManager manager;
+ QBluetoothTransferReply *reply = manager.put(request, 0);
+
+ QVERIFY(reply);
+ QCOMPARE(reply->isFinished(), true);
+ QCOMPARE(reply->isRunning(), false);
+ QCOMPARE(reply->manager(), &manager);
+ QCOMPARE(reply->request(), request);
+ QCOMPARE(reply->error(), QBluetoothTransferReply::FileNotFoundError);
+}
+
QTEST_MAIN(tst_QBluetoothTransferManager)
#include "tst_qbluetoothtransfermanager.moc"