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

Crash in QWindowsNativeInterface::nativeResourceForIntegration

    XMLWordPrintable

Details

    • Bug
    • Resolution: Incomplete
    • P1: Critical
    • None
    • 5.5.1
    • QPA: Windows
    • None
    • 58c23ae1619fb4afaae9c8eb2527c0906baef97b (qtbase/5.6, 6.4.2016, 5.6.1)

    Description

      My app is crashing with a null pointer dereference with the following stacktrace. I have not reproduced the crash myself – instead, we've received 6 reports of this crash from anonymized users via our Breakpad crash dump uploader. The 6 crashes come from 4 different machines, all of which are "Windows 7 (64-bit) 6.1.7601 SP 1.0 x64"

      Thread 0 (crashed)
       0 qwindows.dll        5.5.1.0              0x7fee8ea80a9 QWindowsNativeInterface::nativeResourceForIntegration(QByteArray const &) + 0x8 (qwindowsnativeinterface.cpp:142)
       1 Qt5Gui.dll          5.5.1.0              0x7fee531ed9e QOpenGLContext::openGLModuleHandle() + 0x14 (qopenglcontext.cpp:1156)
       2 Qt5WebEngineCore.dll5.5.1.0              0x7fede5b60a0 
       3 kernel32.dll        6.1.7601.18015       0x76c53009 
       4 Qt5Core.dll         5.5.1.0              0x6e9f153e qt_message + 0xc (qlogging.cpp:266)
       5 Qt5Core.dll         5.5.1.0              0x6e9f2b36 QMessageLogger::warning(char const *,...) + 0x27 (qlogging.cpp:549)
       6 qwindows.dll        5.5.1.0              0x7fee8eae060 QOpenGLStaticContext::create(bool) + 0x29 (qwindowsglcontext.cpp:1008)
       7 qwindows.dll        5.5.1.0              0x7fee8e7b2a6 QWindowsStaticOpenGLContext::doCreate() + 0x6 (qwindowsintegration.cpp:382)
       8 qwindows.dll        5.5.1.0              0x7fee8e7b9cf QWindowsIntegration::staticOpenGLContext() + 0x4 (qwindowsintegration.cpp:429)
       9 qwindows.dll        5.5.1.0              0x7fee8e7b4b8 QWindowsIntegration::openGLModuleType() + 0x4 (qwindowsintegration.cpp:416)
      10 Qt5WebEngineCore.dll5.5.1.0              0x7fede5b531d 
      11 ntdll.dll           6.1.7601.18247       0x76f6542f 
      12 ntdll.dll           6.1.7601.18247       0x76ea3447 
      13 ntdll.dll           6.1.7601.18247       0x76f6542f 
      14 ntdll.dll           6.1.7601.18247       0x76ea3447 
      15 msvcr120.dll        12.0.21005.1         0x7feed216966 
      16 Qt5WebEngineCore.dll5.5.1.0              0x7fede5b572e 
      17 Qt5WebEngineCore.dll5.5.1.0              0x7fede5896e3 
      18 Qt5WebEngine.dll    5.5.1.0              0x7fef0cb398e QQuickWebEngineProfile::defaultProfile() + 0x4a (qquickwebengineprofile.cpp:391)
      19 Qt5WebEngine.dll    5.5.1.0              0x7fef0cb5dcc QQuickWebEngineViewPrivate::QQuickWebEngineViewPrivate() + 0xac (qquickwebengineview.cpp:107)
      20 Qt5WebEngine.dll    5.5.1.0              0x7fef0cb5c8a QQuickWebEngineView::QQuickWebEngineView(QQuickItem *) + 0x3a (qquickwebengineview.cpp:580)
      21 qtwebengineplugin.dl5.5.1.0              0x7fef2951144 QQmlPrivate::createInto<QQuickWebEngineView>(void *) + 0x14 (qqmlprivate.h:102)
      22 Qt5Qml.dll          5.5.1.0              0x6f2bc874 QQmlType::create() + 0xf (qqmlmetatype.cpp:715)
      23 Qt5Qml.dll          5.5.1.0              0x6f306c09 QQmlObjectCreator::createInstance(int,QObject *,bool) + 0x7 (qqmlobjectcreator.cpp:1050)
      

      The source code of qwindowsnativeinterface.cpp looks like this:

          if (resourceType(resource) == GlHandleType)
              return QWindowsIntegration::staticOpenGLContext()->moduleHandle();
      

      and I can see from simple inspection that staticOpenGLContext() can return null, so a null pointer guard is needed before the moduleHandle() call.

      I don't have any information about the GPU of the systems that have crashed. But I can say that this crash is happening very early in the application launch: it's trying to show a local HTML EULA file for the user to agree/disagree with on first run.

      Attachments

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

        Activity

          People

            jbornema Joerg Bornemann
            chrisdolan Chris Dolan
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes