-
Bug
-
Resolution: Unresolved
-
P1: Critical
-
None
-
5.12
-
None
-
MacBook Pro
macOS 10.13.6
I can reproduce the crash when using the trackpad on a MacBook Pro or a regular mouse on Ubuntu.
To reproduce it, run the following example, click "Pick up", then "Drop", then scroll the mouse wheel/trackpad over the area where the Rectangle was initially.
import QtQuick.Controls 2.0 import QtQuick.Layouts 1.0 import QtQuick 2.0 import QtQuick.Window 2.0 import App 1.0 ApplicationWindow { id: window width: 320 height: 480 visible: true header: RowLayout { Button { text: "Pick up" onClicked: sceneItem.parent = null } Button { text: "Drop" onClicked: sceneItem.parent = scene } } Rectangle { id: sceneItem objectName: "sceneItem" color: "steelblue" width: 32 height: 32 } GridView { anchors.fill: parent anchors.margins: 50 model: !sceneItem.parent ? 1 : 0 delegate: ItemDelegate { width: 32 height: 32 ShaderEffectSource { smooth: false sourceItem: sceneItem width: 32 height: 32 anchors.centerIn: parent } } Rectangle { anchors.fill: parent color: "transparent" border.color: "darkorange" } } Item { id: scene anchors.fill: parent } }
ASAN:DEADLYSIGNAL
=================================================================
==56822==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000008 (pc 0x00010e9b5b4e bp 0x7ffee4688830 sp 0x7ffee4688820 T0)
==56822==The signal is caused by a READ memory access.
==56822==Hint: address points to the zero page.
#0 0x10e9b5b4d in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::operator->() const qscopedpointer.h:118
#1 0x10e9b5b04 in decltype(fp.operator->()) qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > >(QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > const&) qglobal.h:1038
#2 0x10ea5db68 in QWindow::d_func() const qwindow.h:98
#3 0x10ea76f66 in QWindow::mapToGlobal(QPoint const&) const qwindow.cpp:2531
#4 0x11269d73e in QQuickWindowPrivate::deliverSinglePointEventUntilAccepted(QQuickPointerEvent*) qquickwindow.cpp:1913
#5 0x1126a644c in QQuickWindowPrivate::deliverPointerEvent(QQuickPointerEvent*) qquickwindow.cpp:2312
#6 0x1126a596d in QQuickWindow::wheelEvent(QWheelEvent*) qquickwindow.cpp:1963
#7 0x10ea75f02 in QWindow::event(QEvent*) qwindow.cpp:2297
#8 0x1126997a9 in QQuickWindow::event(QEvent*) qquickwindow.cpp:1643
#9 0x10cc55344 in QApplicationPrivate::notify_helper(QObject*, QEvent*) qapplication.cpp:3738
#10 0x10cc5b811 in QApplication::notify(QObject*, QEvent*) qapplication.cpp:3108
#11 0x110f8d5c5 in QCoreApplication::notifyInternal2(QObject*, QEvent*) qcoreapplication.cpp:1048
#12 0x110f8fcac in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) qcoreapplication.cpp:1431
#13 0x10ea24223 in QGuiApplicationPrivate::processWheelEvent(QWindowSystemInterfacePrivate::WheelEvent*) qguiapplication.cpp:2154
#14 0x10ea1f3d3 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) qguiapplication.cpp:1814
#15 0x10e9a6ed7 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) qwindowsysteminterface.cpp:1062
#16 0x11c2e0e64 in QCocoaEventDispatcherPrivate::processPostedEvents() qcocoaeventdispatcher.mm:909
#17 0x11c2e3776 in QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void*) qcocoaeventdispatcher.mm:930
#18 0x7fff28b15a10 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ (CoreFoundation:x86_64h+0xa3a10)
#19 0x7fff28bcf42b in __CFRunLoopDoSource0 (CoreFoundation:x86_64h+0x15d42b)
#20 0x7fff28af846f in __CFRunLoopDoSources0 (CoreFoundation:x86_64h+0x8646f)
#21 0x7fff28af78ec in __CFRunLoopRun (CoreFoundation:x86_64h+0x858ec)
#22 0x7fff28af7152 in CFRunLoopRunSpecific (CoreFoundation:x86_64h+0x85152)
#23 0x7fff27de1d95 in RunCurrentEventLoopInMode (HIToolbox:x86_64+0x2fd95)
#24 0x7fff27de1a0e in ReceiveNextEventCommon (HIToolbox:x86_64+0x2fa0e)
#25 0x7fff27de1883 in _BlockUntilNextEventMatchingListInModeWithFilter (HIToolbox:x86_64+0x2f883)
#26 0x7fff26092a72 in _DPSNextEvent (AppKit:x86_64+0x41a72)
#27 0x7fff26828e33 in -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] (AppKit:x86_64+0x7d7e33)
#28 0x7fff26087884 in -[NSApplication run] (AppKit:x86_64+0x36884)
#29 0x11c2dca99 in QCocoaEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) qcocoaeventdispatcher.mm:430
#30 0x110f7d198 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) qeventloop.cpp:136
#31 0x110f7d89d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) qeventloop.cpp:214
#32 0x110f8f3ae in QCoreApplication::exec() qcoreapplication.cpp:1336
#33 0x10ea1eaf5 in QGuiApplication::exec() qguiapplication.cpp:1753
#34 0x10b615930 in TshnmApplication::doRun(int&, char**) TshnmApplication.cpp:264
#35 0x10bb4b7d7 in AbstractApplication::run(int&, char**) AbstractApplication.cpp:43
#36 0x10b6477f7 in main main.cpp:17
#37 0x7fff50938014 in start (libdyld.dylib:x86_64+0x1014)
==56822==Register values:
rax = 0x0000000000000008 rbx = 0x00007ffee4688920 rcx = 0x0000100000000001 rdx = 0x00007ffee4688bc0
rdi = 0x0000000000000008 rsi = 0x0000000000000000 rbp = 0x00007ffee4688830 rsp = 0x00007ffee4688820
r8 = 0x000000010fc22772 r9 = 0x00007ffee46888a0 r10 = 0x00007ffee46888c0 r11 = 0x00007ffee46888e0
r12 = 0xf200f204f204f2f2 r13 = 0xf2f8f2f2f200f2f2 r14 = 0x00007ffee4688900 r15 = 0xf200f2f2f200f2f2
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV qscopedpointer.h:118 in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::operator->() const
==56822==ABORTING
22:29:31: The program has unexpectedly finished.
- relates to
-
QTBUG-70814 ShaderEffectSource clears window of sourceItem
-
- Open
-