Make clear() use the shared null inline
authorJoão Abecasis <joao.abecasis@nokia.com>
Wed, 1 Feb 2012 10:51:08 +0000 (11:51 +0100)
committerQt by Nokia <qt-info@nokia.com>
Wed, 1 Feb 2012 11:59:32 +0000 (12:59 +0100)
There isn't a good reason to impose the additional library call and
using the shared null here matches existing behavior in QByteArray,
QString and QVector.

Change-Id: Idd0bb9c7411db52630402534a11d87cbf2b1e7ba
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
src/corelib/tools/qarraydatapointer.h
tests/auto/corelib/tools/qarraydata/tst_qarraydata.cpp

index 8b5752b..215549a 100644 (file)
@@ -141,7 +141,7 @@ public:
     void clear()
     {
         QArrayDataPointer tmp(d);
-        d = Data::allocate(0);
+        d = Data::sharedNull();
     }
 
     bool detach()
index 46985c1..ff0d8bd 100644 (file)
@@ -242,7 +242,7 @@ void tst_QArrayData::simpleVector()
     QVERIFY(v1.isNull());
     QVERIFY(v2.isNull());
     QVERIFY(v3.isNull());
-    QVERIFY(!v4.isNull());
+    QVERIFY(v4.isNull());
     QVERIFY(!v5.isNull());
     QVERIFY(!v6.isNull());
     QVERIFY(!v7.isNull());
@@ -306,7 +306,7 @@ void tst_QArrayData::simpleVector()
 
     QVERIFY(v1.isSharedWith(v2));
     QVERIFY(v1.isSharedWith(v3));
-    QVERIFY(!v1.isSharedWith(v4));
+    QVERIFY(v1.isSharedWith(v4));
     QVERIFY(!v1.isSharedWith(v5));
     QVERIFY(!v1.isSharedWith(v6));