Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-39141

Mac: Crash on dereferencing QCocoaWindow pointer stored in QNSWindowHelper.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.3.1
    • 5.3.0
    • QPA
    • None
    • macOS
    • 7ba0eb5a0daae59c495bbf250fa37a2627950e94

    Description

      Observed on the CI system: https://codereview.qt-project.org/#change,85483

      Happens during the QWindow destructor.

      QtQA::App::TestRunner: Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
      QtQA::App::TestRunner: 0 libsystem_kernel.dylib 0x00007fff89791ce2 __pthread_kill + 10
      QtQA::App::TestRunner: 1 libsystem_c.dylib 0x00007fff8f33e7d2 pthread_kill + 95
      QtQA::App::TestRunner: 2 libsystem_c.dylib 0x00007fff8f32fa7a abort + 143
      QtQA::App::TestRunner: 3 QtCore 0x00000001000b48d9 _ZN13TestNamespaceL16qt_message_fatalENS_9QtMsgTypeERKNS_18QMessageLogContextERKNS_7QStringE + 9
      QtQA::App::TestRunner: 4 QtCore 0x00000001000b5b55 TestNamespace::QMessageLogger::fatal(char const*, ...) const + 165
      QtQA::App::TestRunner: 5 QtTest 0x0000000100060b6d TestNamespace::QTest::FatalSignalHandler::signal(int) + 77
      QtQA::App::TestRunner: 6 libsystem_c.dylib 0x00007fff8f390cfa _sigtramp + 26
      QtQA::App::TestRunner: 7 QtGui 0x00000001006eb848 TestNamespace::QWindow::transientParent() const + 8
      QtQA::App::TestRunner: 8 libqcocoa.dylib 0x000000010290da2d -[QNSWindow canBecomeMainWindow] + 61
      QtQA::App::TestRunner: 9 com.apple.CoreFoundation 0x00007fff909f4fb1 -[NSObject performSelector:] + 49
      QtQA::App::TestRunner: 10 com.apple.AppKit 0x00007fff8f49c263 -[NSApplication makeWindowsPerform:inOrder:] + 217
      QtQA::App::TestRunner: 11 com.apple.AppKit 0x00007fff8f61f47b -[NSWindow _orderOutAndCalcKeyWithCounter:stillVisible:docWindow:] + 717
      QtQA::App::TestRunner: 12 com.apple.AppKit 0x00007fff8f598a31 -[NSWindow _reallyDoOrderWindow:relativeTo:findKey:forCounter:force:isModal:] + 3152
      QtQA::App::TestRunner: 13 com.apple.AppKit 0x00007fff8f597cf8 -[NSWindow _doOrderWindow:relativeTo:findKey:forCounter:force:isModal:] + 807
      QtQA::App::TestRunner: 14 com.apple.AppKit 0x00007fff8f59797c -[NSWindow orderWindow:relativeTo:] + 154
      QtQA::App::TestRunner: 15 libqcocoa.dylib 0x0000000102910124 TestNamespace::QCocoaWindow::hide(bool) + 308
      QtQA::App::TestRunner: 16 libqcocoa.dylib 0x00000001029109d2 TestNamespace::QCocoaWindow::setVisible(bool) + 1602
      QtQA::App::TestRunner: 17 QtGui 0x00000001006ead8e TestNamespace::QWindow::setVisible(bool) + 846
      QtQA::App::TestRunner: 18 QtGui 0x00000001006ea35a TestNamespace::QWindow::destroy() + 234
      QtQA::App::TestRunner: 19 QtGui 0x00000001006ea048 TestNamespace::QWindow::~QWindow() + 136
      QtQA::App::TestRunner: 20 com.yourcompany.tst_qwindow 0x0000000100031b0b tst_QWindow::windowModality_QTBUG27039() + 1019
      QtQA::App::TestRunner: 21 QtCore 0x00000001002bb15f TestNamespace::QMetaMethod::invoke(TestNamespace::QObject*, TestNamespace::Qt::ConnectionType, TestNamespace::QGenericReturnArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument) const + 1055
      QtQA::App::TestRunner: 22 QtCore 0x00000001002bacdc TestNamespace::QMetaObject::invokeMethod(TestNamespace::QObject*, char const*, TestNamespace::Qt::ConnectionType, TestNamespace::QGenericReturnArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument, TestNamespace::QGenericArgument) + 2476
      QtQA::App::TestRunner: 23 QtTest 0x0000000100064709 ZN13TestNamespace5QTestL17qInvokeTestMethodEPKcS2 + 1465
      QtQA::App::TestRunner: 24 QtTest 0x00000001000614d2 TestNamespace::QTest::qExec(TestNamespace::QObject*, int, char**) + 1762
      QtQA::App::TestRunner: 25 com.yourcompany.tst_qwindow 0x0000000100039208 main + 88
      QtQA::App::TestRunner: 26 com.yourcompany.tst_qwindow 0x00000001000033c4 start + 52
      QtQA::App::TestRunner:

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            dedietri Gabriel de Dietrich (drgvond)
            sorvig Morten Sørvig
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes