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>
This commit is contained in:
parent
2603873e75
commit
ee1afbb8aa
@ -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];
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user