summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMorten Johan Sørvig <morten.sorvig@digia.com>2015-01-13 10:49:07 +0100
committerJani Heikkinen <jani.heikkinen@theqtcompany.com>2015-01-20 05:47:16 +0100
commitee1afbb8aa99e10f1dae11d8418e40351f685b64 (patch)
tree351dae8bfc81845e07fb727c83d6a3ae4bff7285 /tests
parent2603873e75e4b3eedef2939ada3069da36231c09 (diff)
downloadqtbase-ee1afbb8aa99e10f1dae11d8418e40351f685b64.tar.gz
qtbase-ee1afbb8aa99e10f1dae11d8418e40351f685b64.tar.bz2
qtbase-ee1afbb8aa99e10f1dae11d8418e40351f685b64.zip
tst_qstring_mac: Correct memory management.
The NSStrings return by QString::toNSString are autoreleased; manually releasing them is not correct. The test still works (no leaks or double deletes) since there is no autorelease pool in place when running it. We don't want to encourage incorrect usage: remove the release call an add an autorelease pool. Change-Id: Ic566fd3a8efd6cbc0eb6db850248a68bfc8fed0b Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/corelib/tools/qstring/tst_qstring_mac.mm10
1 files changed, 8 insertions, 2 deletions
diff --git a/tests/auto/corelib/tools/qstring/tst_qstring_mac.mm b/tests/auto/corelib/tools/qstring/tst_qstring_mac.mm
index 9061b6c39d..4cec5b3798 100644
--- a/tests/auto/corelib/tools/qstring/tst_qstring_mac.mm
+++ b/tests/auto/corelib/tools/qstring/tst_qstring_mac.mm
@@ -63,17 +63,23 @@ void tst_QString_macTypes()
}
// QString <-> NSString
{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+
QString qtString("test string");
const NSString *nsString = qtString.toNSString();
QCOMPARE(QString::fromNSString(nsString), qtString);
- [nsString release];
+
+ [pool release];
}
{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+
QString qtString("test string");
const NSString *nsString = qtString.toNSString();
QString qtStringCopy(qtString);
qtString = qtString.toUpper(); // modify
QCOMPARE(QString::fromNSString(nsString), qtStringCopy);
- [nsString release];
+
+ [pool release];
}
}