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

Crash in QQuickWindow::mouseGrabberItem()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.9.2
    • 5.9.1
    • None
    • Windows 8 embedded
    • 4c3246e49521b6341ddcc513814ae03e6d8f1d3e

    Description

      After 1000-70000 random mouseclicks in an application, a crash happens.

       

      >   Qt5Quick.dll!QQuickEventPoint::grabber() Line 523   C++
          Qt5Quick.dll!QQuickWindowPrivate::flushFrameSynchronousEvents() Line 2107   C++
          Qt5Quick.dll!QSGWindowsRenderLoop::renderWindow(QQuickWindow * window) Line 458 C++
          Qt5Quick.dll!QSGWindowsRenderLoop::render() Line 389    C++
          Qt5Quick.dll!QSGWindowsRenderLoop::event(QEvent * event) Line 369   C++
          Qt5Widgets.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3718 C++
          Qt5Widgets.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 3680   C++
          Qt5Core.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1018 C++
          Qt5Core.dll!QEventDispatcherWin32Private::sendTimerEvent(int timerId) Line 447  C++
          Qt5Core.dll!QEventDispatcherWin32::event(QEvent * e) Line 1056  C++
          Qt5Widgets.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3718 C++
          Qt5Widgets.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 3680   C++
          Qt5Core.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1018 C++
          Qt5Core.dll!QCoreApplicationPrivate::sendPostedEvents(QObject * receiver, int event_type, QThreadData * data) Line 1678 C++
          qwindows.dll!QWindowsGuiEventDispatcher::sendPostedEvents() Line 82 C++
          Qt5Core.dll!qt_internal_proc(HWND__ * hwnd, unsigned int message, unsigned __int64 wp, __int64 lp) Line 236 C++
          user32.dll!UserCallWinProcCheckWow()   Unknown
          user32.dll!DispatchMessageWorker() Unknown
          Qt5Core.dll!QEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 627 C++
          qwindows.dll!QWindowsGuiEventDispatcher::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 75    C++
          Qt5Core.dll!QEventLoop::exec(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 211 C++
          Qt5Core.dll!QCoreApplication::exec() Line 1291  C++

      (Note. release build)

       

      The issue seems to be that

      auto point = event->pointById(d->touchMouseId);
      

      gives point to be a nullpointer sometimes, and the following lines dereferences it.

       

      Attachments

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

        Activity

          People

            srutledg Shawn Rutledge
            svuorela Sune Vuorela
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes