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

[Regression]On Mouse Area press, deleting other overlapping mouse area crashes the Application

    XMLWordPrintable

Details

    • Linux/X11, Windows
    • 10536ea75 (dev), 9c9072e82 (6.7), 2cf35d3f4 (6.6), 741334d69 (tqtc/lts-6.5)

    Description

      The name and version number of your compiler :  VS2017

      Qt version : 5.12.9

      The name and version number of your operating system: Windows 10  and Ubuntu 16.04 LTS

      With 5.12.9, if application has overlapping mousearea and one controls the other dynamically during press event it crashes the app. With 5.12.9, if application has overlapping mousearea and one controls the other dynamically during press event it crashes the app.

      Please use the attached testmousepresstargets.zip
      step:

      1.  Build and launch testmousepresstargets app.
      2. There will be two rectangles with respective mouse areas
        • Yellow rectangle gets created via c++
        • Green rectangle created in qml
      3.  Press on Green Rectangle to toggle Yellow rectangle. Here on press either Yellow rectangle gets deleted or created.

      Expected behavior: application should not crash 

      Actual behavior :  Notice Application crash. 

      Application doesn't crash in case testRectObj->deleteLater(); instead of delete testRectObj; in testhandler.cpp void TestHandler:: handleQmlCallToToggleTestRect() 

      Note : 

      This looks like a regression, as didn't observe this crash behavior with Qt5.6.3 release when shifted to 5.12.9 noticed it. 

      Find the crash log as below,

       1 QQuickItemPrivate::itemToWindowTransform qquickitem.cpp 3118 0x7ff95233a609
      2 QQuickItemPrivate::windowToItemTransform qquickitem.cpp 3109 0x7ff95233a5b3
      3 QQuickItem::mapFromScene qquickitem.cpp 7891 0x7ff95232e7f7
      4 QQuickEventPoint::localizePosition qquickevents.cpp 800 0x7ff9523075c9
      5 QQuickSinglePointEvent::localize qquickevents.cpp 1322 0x7ff9523095cb
      6 QQuickWindowPrivate::deliverMatchingPointsToItem qquickwindow.cpp 2784 0x7ff95237cceb
      7 QQuickWindowPrivate::deliverPressOrReleaseEvent qquickwindow.cpp 2766 0x7ff95237c71d
      8 QQuickWindowPrivate::deliverMouseEvent qquickwindow.cpp 1930 0x7ff952377507
      9 QQuickWindowPrivate::deliverPointerEvent qquickwindow.cpp 2502 0x7ff95237b1b4
      10 QQuickWindowPrivate::handleMouseEvent qquickwindow.cpp 2323 0x7ff952379b6f
      11 QQuickWindow::mousePressEvent qquickwindow.cpp 2289 0x7ff952372c0c
      12 QWindow::event qwindow.cpp 2247 0x7ff944587cd7
      13 QQuickWindow::event qquickwindow.cpp 1795 0x7ff9523729a4
      14 QCoreApplicationPrivate::notify_helper qcoreapplication.cpp 1249 0x7ff943b744a9
      15 doNotify qcoreapplication.cpp 1178 0x7ff943b75e1f
      16 QCoreApplication::notify qcoreapplication.cpp 1165 0x7ff943b71891
      17 QGuiApplication::notify qguiapplication.cpp 1797 0x7ff944564224
      18 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1088 0x7ff943b733e0
      19 QCoreApplication::sendSpontaneousEvent qcoreapplication.cpp 1489 0x7ff943b7327b
      20 QGuiApplicationPrivate::processMouseEvent qguiapplication.cpp 2108 0x7ff944566fc4
      21 QGuiApplicationPrivate::processWindowSystemEvent qguiapplication.cpp 1843 0x7ff94456a596
      22 QWindowSystemInterface::sendWindowSystemEvents qwindowsysteminterface.cpp 1163 0x7ff944535572
      23 QWindowsGuiEventDispatcher::sendPostedEvents qwindowsguieventdispatcher.cpp 83 0x7ff95a0eb3e2
      24 qt_internal_proc qeventdispatcher_win.cpp 250 0x7ff943c3eed0
      25 CallWindowProcW USER32 0x7ff9bc035c1d
      26 DispatchMessageW USER32 0x7ff9bc035612
      27 QEventDispatcherWin32::processEvents qeventdispatcher_win.cpp 643 0x7ff943c3f823
      28 QWindowsGuiEventDispatcher::processEvents qwindowsguieventdispatcher.cpp 74 0x7ff95a0eb394
      29 QEventLoop::processEvents qeventloop.cpp 139 0x7ff943b6d18d
      30 QEventLoop::exec qeventloop.cpp 225 0x7ff943b6d3df
      31 QCoreApplication::exec qcoreapplication.cpp 1389 0x7ff943b70d3a
      32 QGuiApplication::exec qguiapplication.cpp 1785 0x7ff9445641b8
      33 main main.cpp 35 0x7ff6b06d313c
      34 WinMain qtmain_win.cpp 97 0x7ff6b06d9a85
      35 invoke_main exe_common.inl 107 0x7ff6b06d7e4d
      36 __scrt_common_main_seh exe_common.inl 288 0x7ff6b06d7d3e
      37 __scrt_common_main exe_common.inl 331 0x7ff6b06d7bfe
      38 WinMainCRTStartup exe_winmain.cpp 17 0x7ff6b06d7ed9
      39 BaseThreadInitThunk KERNEL32 0x7ff9bb357c24
      40 RtlUserThreadStart ntdll 0x7ff9bce2d721 

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-91272
          # Subject Branch Project Status CR V

          Activity

            People

              tvete Paul Olav Tvete
              shriram.kulkarni Shriram Kulkarni
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes