From 54cc48176086a5f529c679141e9dde7911abda5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Fri, 2 May 2014 20:52:25 +0200 Subject: [PATCH 1/2] Cocoa: Clear window hash entry in ~QCocoaWindow. The Cocoa platform plugin maintains a NSWindow-> QCocoaWindow hash. Hash entries was not properly cleared on QCocoaWindow destruction. Add call to clear the entry for the destroyed window. Make QCocoaIntegration remove the key from the hash in this case instead of setting it to 0. Task-number: QTBUG-37597 Change-Id: I3adaeee45069aea1d2ecacd948298302eafe1929 Reviewed-by: Gabriel de Dietrich --- src/plugins/platforms/cocoa/qcocoaintegration.mm | 5 ++++- src/plugins/platforms/cocoa/qcocoawindow.mm | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm index c4398622e8e..7fa3adc521a 100644 --- a/src/plugins/platforms/cocoa/qcocoaintegration.mm +++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm @@ -520,7 +520,10 @@ NSToolbar *QCocoaIntegration::toolbar(QWindow *window) const void QCocoaIntegration::setWindow(NSWindow* nsWindow, QCocoaWindow *window) { - mWindows.insert(nsWindow, window); + if (window == 0) + mWindows.remove(nsWindow); + else + mWindows.insert(nsWindow, window); } QCocoaWindow *QCocoaIntegration::window(NSWindow *window) diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm index 60152b56b20..d355dd0ed17 100644 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm @@ -420,6 +420,9 @@ QCocoaWindow::~QCocoaWindow() qDebug() << "QCocoaWindow::~QCocoaWindow" << this; #endif + if (QCocoaIntegration *ci = QCocoaIntegration::instance()) + ci->setWindow(m_nsWindow, 0); + QCocoaAutoReleasePool pool; [m_nsWindow setContentView:nil]; [m_nsWindow.helper detachFromPlatformWindow]; From 4e9853139ca04858f1639e0fba6b8caf57474f29 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Tue, 13 May 2014 16:49:33 +0200 Subject: [PATCH 2/2] Update Copyright year in commercial nag screens Change-Id: I70420c44c018dbe733a50badb7f9f7f419459f7a Reviewed-by: Lars Knoll --- src/corelib/kernel/qtcore_eval.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/corelib/kernel/qtcore_eval.cpp b/src/corelib/kernel/qtcore_eval.cpp index 40c1157fb45..a5c4c366389 100644 --- a/src/corelib/kernel/qtcore_eval.cpp +++ b/src/corelib/kernel/qtcore_eval.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtCore module of the Qt Toolkit. @@ -55,7 +55,7 @@ QT_BEGIN_NAMESPACE static const char boilerplate_supported_but_time_limited[] = "\nQt %1 Evaluation License\n" - "Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).\n" + "Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).\n" "This trial version may only be used for evaluation purposes\n" "and will shut down after 120 minutes.\n" "Registered to:\n" @@ -65,7 +65,7 @@ static const char boilerplate_supported_but_time_limited[] = static const char boilerplate_supported[] = "\nQt %1 Evaluation License\n" - "Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).\n" + "Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).\n" "This trial version may only be used for evaluation purposes\n" "Registered to:\n" " Licensee: %2\n\n"