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

Crash in render thread cleanup with multiple QQuickCanvas

    XMLWordPrintable

Details

    • e03363dfd1aeddd085c4c86d9a1964da769d7980

    Description

      The tst_qquicktextinput::cursorVisible() test is crashing when cleaning up one of two QQuickView objects created on the stack. The first view contains a TextInput, the second is empty and was simply used to steal focus from the first. The crash in the test has been addressed by changing the second view to a QWindow with http://codereview.qt-project.org/#change,22250

      The backtrace suggests the destructor for QSGDefaultDistanceFieldGlyphCache is accessing an invalid shared gl context, presumably cleaned up while destroying the second view.

      QtQA::App::TestRunner: 0 libsystem_kernel.dylib 0x00007fff8d94cce2 __pthread_kill + 10
      QtQA::App::TestRunner: 1 libsystem_c.dylib 0x00007fff89f367d2 pthread_kill + 95
      QtQA::App::TestRunner: 2 libsystem_c.dylib 0x00007fff89f27a7a abort + 143
      QtQA::App::TestRunner: 3 QtCore 0x0000000100982c53 qt_message_output(QtMsgType, QMessageLogContext const&, char const*) + 179
      QtQA::App::TestRunner: 4 QtCore 0x00000001009810db _ZL10qt_message9QtMsgTypeRK18QMessageLogContextPKcP13__va_list_tag + 459
      QtQA::App::TestRunner: 5 QtCore 0x000000010098168d QMessageLogger::fatal(char const*, ...) + 141
      QtQA::App::TestRunner: 6 QtTest 0x0000000101ca3e92 QTest::FatalSignalHandler::signal(int) + 66
      QtQA::App::TestRunner: 7 libsystem_c.dylib 0x00007fff89f88cfa _sigtramp + 26
      QtQA::App::TestRunner: 8 QtGui 0x0000000100e85074 QOpenGLContext::shareGroup() const + 4
      QtQA::App::TestRunner: 9 QtGui 0x0000000101088c08 QOpenGLFunctionsPrivateEx* QOpenGLMultiGroupSharedResource::value<QOpenGLFunctionsPrivateEx>(QOpenGLContext*) + 24
      QtQA::App::TestRunner: 10 QtGui 0x000000010107693a _ZL15qt_gl_functionsP14QOpenGLContext + 234
      QtQA::App::TestRunner: 11 QtGui 0x0000000101087b94 void (anonymous namespace)::Resolver<QOpenGLFunctionsPrivate, void (*)(int, unsigned int const*), 3, void>::operator()<int, unsigned int const*>(int, unsigned int const*) + 52
      QtQA::App::TestRunner: 12 QtGui 0x000000010107a38b _ZL33qopenglfResolveDeleteFramebuffersiPKj + 75
      QtQA::App::TestRunner: 13 QtQuick 0x000000010010e793 QSGDefaultDistanceFieldGlyphCache::~QSGDefaultDistanceFieldGlyphCache() + 211
      QtQA::App::TestRunner: 14 QtQuick 0x000000010010e682 QSGDefaultDistanceFieldGlyphCache::~QSGDefaultDistanceFieldGlyphCache() + 18
      QtQA::App::TestRunner: 15 QtQuick 0x00000001001069f1 QSGDistanceFieldGlyphCacheManager::~QSGDistanceFieldGlyphCacheManager() + 81
      QtQA::App::TestRunner: 16 QtQuick 0x000000010010a110 QSGContext::invalidate() + 416
      QtQA::App::TestRunner: 17 QtQuick 0x0000000100205923 QQuickRenderThreadSingleContextWindowManager::run() + 1731
      QtQA::App::TestRunner: 18 QtCore 0x000000010098a3af QThreadPrivate::start(void*) + 495
      QtQA::App::TestRunner: 19 libsystem_c.dylib 0x00007fff89f348bf _pthread_start + 335
      QtQA::App::TestRunner: 20 libsystem_c.dylib 0x00007fff89f37b75 thread_start + 13
      

      Full logs from CI are here: http://testresults.qt-project.org/ci/QtDeclarative_master_Integration/build_02209/macx-clang_developer-build_OSX_10.7/log.txt.gz

      Attachments

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

        Activity

          People

            esabraha Eskil Abrahamsen Blomfeldt
            denexter Andrew den Exter (closed Nokia identity) (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes