summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qcore_mac_objc.mm
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@digia.com>2013-11-21 16:32:00 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-11-22 22:36:38 +0100
commit03cd5b3563e796fbab8ebe1c055b309c7f3fee1a (patch)
tree066e9a99b71b9d598c1d826cd2d8d404725f5498 /src/corelib/kernel/qcore_mac_objc.mm
parentf441d8e52360fe5c03887fa0bbce8bfda2c8ff2d (diff)
iOS: Use separate release pool for qt_ios_version()
QSysInfo::MacintoshVersion is initialized before the main thread's release pool has been set up, so we have to wrap the UIKit usage in our own pool. Change-Id: I80e2c068339e0251f38ecf55fcfb764594eb3ad7 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Diffstat (limited to 'src/corelib/kernel/qcore_mac_objc.mm')
-rw-r--r--src/corelib/kernel/qcore_mac_objc.mm5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/corelib/kernel/qcore_mac_objc.mm b/src/corelib/kernel/qcore_mac_objc.mm
index 8ea318073b..73f8296021 100644
--- a/src/corelib/kernel/qcore_mac_objc.mm
+++ b/src/corelib/kernel/qcore_mac_objc.mm
@@ -61,6 +61,8 @@ QString QCFString::toQString(const NSString *nsstr)
#ifdef Q_OS_IOS
QSysInfo::MacVersion qt_ios_version()
{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+
int major = 0, minor = 0;
NSArray *components = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."];
switch ([components count]) {
@@ -75,6 +77,9 @@ QSysInfo::MacVersion qt_ios_version()
default:
Q_UNREACHABLE();
}
+
+ [pool release];
+
return QSysInfo::MacVersion(Q_MV_IOS(major, minor));
}
#endif