diff options
4 files changed, 11 insertions, 2 deletions
diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm index 6c3e403c51..9dbc60f6c7 100644 --- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm +++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm @@ -159,6 +159,8 @@ static QString familyNameFromPostScriptName(QHash<QString, QString> &psNameToFam void QCoreTextFontDatabase::populateFontDatabase() { + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + QCFType<CTFontCollectionRef> collection = CTFontCollectionCreateFromAvailableFonts(0); if (! collection) return; @@ -243,8 +245,6 @@ void QCoreTextFontDatabase::populateFontDatabase() NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSArray *languages = [defaults stringArrayForKey: @"AppleLanguages"]; - NSAutoreleasePool *pool = [NSAutoreleasePool new]; - NSDictionary *fallbackDict = [NSDictionary dictionaryWithContentsOfFile: @"/System/Library/Frameworks/ApplicationServices.framework/Frameworks/CoreText.framework/Resources/DefaultFontFallbacks.plist"]; for (NSString *style in [fallbackDict allKeys]) { diff --git a/src/plugins/platforms/cocoa/qcocoabackingstore.mm b/src/plugins/platforms/cocoa/qcocoabackingstore.mm index 0cde19644e..d278392409 100644 --- a/src/plugins/platforms/cocoa/qcocoabackingstore.mm +++ b/src/plugins/platforms/cocoa/qcocoabackingstore.mm @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qcocoabackingstore.h" +#include "qcocoaautoreleasepool.h" #include <QtCore/qdebug.h> #include <QtGui/QPainter> @@ -80,6 +81,7 @@ void QCocoaBackingStore::flush(QWindow *widget, const QRegion ®ion, const QPo { Q_UNUSED(widget); Q_UNUSED(offset); + QCocoaAutoReleasePool pool; QRect geo = region.boundingRect(); diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm index 6d7770fecc..03348bb434 100644 --- a/src/plugins/platforms/cocoa/qcocoaintegration.mm +++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm @@ -90,6 +90,8 @@ QCocoaIntegration::QCocoaIntegration() : mFontDb(new QCoreTextFontDatabase()) , mEventDispatcher(new QCocoaEventDispatcher()) { + QCocoaAutoReleasePool pool; + qApp->setAttribute(Qt::AA_DontUseNativeMenuBar, false); NSApplication *cocoaApplication = [NSApplication sharedApplication]; diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index de38db5fab..86db8a5f67 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -129,6 +129,7 @@ void QCocoaWindow::setGeometry(const QRect &rect) void QCocoaWindow::setVisible(bool visible) { + QCocoaAutoReleasePool pool; if (visible) { // The parent window might have moved while this window was hidden, // update the window geometry if there is a parent. @@ -146,6 +147,8 @@ void QCocoaWindow::setVisible(bool visible) void QCocoaWindow::setWindowTitle(const QString &title) { + QCocoaAutoReleasePool pool; + CFStringRef windowTitle = QCFString::toCFStringRef(title); [m_nsWindow setTitle: const_cast<NSString *>(reinterpret_cast<const NSString *>(windowTitle))]; CFRelease(windowTitle); @@ -164,6 +167,8 @@ void QCocoaWindow::lower() void QCocoaWindow::propagateSizeHints() { + QCocoaAutoReleasePool pool; + [m_nsWindow setMinSize : qt_mac_toNSSize(window()->minimumSize())]; [m_nsWindow setMaxSize : qt_mac_toNSSize(window()->maximumSize())]; |