Details
Description
When opening https://open.spotify.com in Firefox, and dragging any element into simplebrowser (e.g. an album picture from "spotify playlists"), it crashes in:
Thread 1 "simplebrowser" received signal SIGSEGV, Segmentation fault. QUrl::isValid (this=0x0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/io/qurl.cpp:1876 Downloading source file /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/io/qurl.cpp 1876 if (isEmpty()) { (gdb) bt #0 QUrl::isValid (this=0x0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/io/qurl.cpp:1876 #1 0x00007fffec128021 in QUrl::toString (this=0x0, options=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/io/qurl.cpp:2831 #2 0x00007fffec128394 in QUrl::toEncoded (this=<optimized out>, options=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/io/qurl.cpp:2967 #3 0x00007fffedfcb402 in QtWebEngineCore::toGurl () at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.6.2/src/core/type_conversion.h:99 #4 0x00007fffedfd0916 in fillDropDataFromMimeData () at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.6.2/src/core/web_contents_adapter.cpp:1631 #5 0x00007fffedfd149f in QtWebEngineCore::WebContentsAdapter::enterDrag () at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.6.2/src/core/web_contents_adapter.cpp:1689 #6 0x00007ffff7facd35 in QWebEngineView::dragEnterEvent (this=0x555555b33430, e=0x7fffffffbcc0) at /usr/src/debug/qt6-webengine/qtwebengine-everywhere-src-6.6.2/src/webenginewidgets/api/qwebengineview.cpp:1281 #7 0x00007ffff7944e07 in QWidget::event (this=0x555555b33430, event=0x7fffffffbcc0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/widgets/kernel/qwidget.cpp:9170 #8 0x00007ffff78f438b in QApplicationPrivate::notify_helper (this=this@entry=0x5555555c9930, receiver=receiver@entry=0x555555b33430, e=e@entry=0x7fffffffbcc0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/widgets/kernel/qapplication.cpp:3296 #9 0x00007ffff78f6f7a in QApplication::notify (this=0x7fffffffc6f0, receiver=0x555555b151b0, e=0x7fffffffbcc0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/widgets/kernel/qapplication.cpp:3023 #10 0x00007fffec139818 in QCoreApplication::notifyInternal2 (receiver=0x555555b151b0, event=0x7fffffffbcc0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/kernel/qcoreapplication.cpp:1121 #11 0x00007fffec13984a in QCoreApplication::forwardEvent (receiver=<optimized out>, event=<optimized out>, originatingEvent=<optimized out>) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/kernel/qcoreapplication.cpp:1136 #12 0x00007ffff79589ef in QWidgetWindow::handleDragEnterEvent (this=0x555555b0ae70, event=event@entry=0x7fffffffbfb0, widget=<optimized out>, widget@entry=0x0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/widgets/kernel/qwidgetwindow.cpp:930 #13 0x00007ffff795972c in QWidgetWindow::event (this=0x555555b0ae70, event=0x7fffffffbfb0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/widgets/kernel/qwidgetwindow.cpp:300 #14 0x00007ffff78f438b in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x555555b0ae70, e=0x7fffffffbfb0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/widgets/kernel/qapplication.cpp:3296 #15 0x00007fffec139818 in QCoreApplication::notifyInternal2 (receiver=0x555555b0ae70, event=0x7fffffffbfb0) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/kernel/qcoreapplication.cpp:1121 #16 0x00007fffec13985d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/kernel/qcoreapplication.cpp:1539 #17 0x00007fffecd7862a in QGuiApplicationPrivate::processDrag (w=0x555555b0ae70, dropData=<optimized out>, p=..., supportedActions=..., buttons=..., modifiers=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/gui/kernel/qguiapplication.cpp:3369 #18 0x00007fffecddeed1 in QWindowSystemInterface::handleDrag (window=0x555555b0ae70, dropData=dropData@entry=0x7fffc8006dc0, p=..., supportedActions=supportedActions@entry=..., buttons=buttons@entry=..., modifiers=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/gui/kernel/qwindowsysteminterface.cpp:845 #19 0x00007fffd7a30c4d in QXcbDrag::handle_xdnd_position (this=0x5555555eee40, w=0x555555b0f7a0, e=<optimized out>, b=..., mods=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/plugins/platforms/xcb/qxcbdrag.cpp:771 #20 0x00007fffd7a28ded in QXcbDrag::handlePosition (event=0x5555561ca160, w=0x555555b0f7a0, this=0x5555555eee40) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/plugins/platforms/xcb/qxcbdrag.cpp:845 #21 QXcbWindow::handleClientMessageEvent (this=0x555555b0f780, event=0x5555561ca160) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/plugins/platforms/xcb/qxcbwindow.cpp:1763 #22 0x00007fffd79e7adb in QXcbConnection::handleXcbEvent (this=<optimized out>, event=0x5555561ca160) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/plugins/platforms/xcb/qxcbconnection.cpp:612 #23 0x00007fffd79ef76c in QXcbConnection::processXcbEvents (this=0x5555555f4bc0, flags=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/plugins/platforms/xcb/qxcbconnection.cpp:1087 #24 0x00007fffd7a04bd7 in xcbSourceDispatch (source=<optimized out>) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:55 #25 0x00007fffeb153199 in g_main_dispatch (context=0x7fffd0000f00) at ../glib/glib/gmain.c:3344 #26 0x00007fffeb1b23bf in g_main_context_dispatch_unlocked (context=0x7fffd0000f00) at ../glib/glib/gmain.c:4152 #27 g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x7fffd0000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4217 #28 0x00007fffeb152712 in g_main_context_iteration (context=0x7fffd0000f00, may_block=1) at ../glib/glib/gmain.c:4282 #29 0x00007fffec3739c4 in QEventDispatcherGlib::processEvents (this=0x555555634cd0, flags=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/kernel/qeventdispatcher_glib.cpp:393 #30 0x00007fffec143d6e in QEventLoop::processEvents (flags=..., this=0x7fffffffc690) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/kernel/qeventloop.cpp:100 #31 QEventLoop::exec (this=0x7fffffffc690, flags=...) at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/kernel/qeventloop.cpp:182 #32 0x00007fffec13c2b8 in QCoreApplication::exec () at /usr/src/debug/qt6-base/qtbase-everywhere-src-6.6.2/src/corelib/global/qflags.h:74 #33 0x0000555555565f2d in main ()
with a debug build quitting a bit earlier:
ASSERT: "!isEmpty()" in file /home/florian/proj/qt/dev6/qt5/qtbase/src/corelib/tools/qlist.h, line 632
Received signal 6
#0 0x79c407297103 base::debug::CollectStackTrace()
#1 0x79c407261734 base::debug::StackTrace::StackTrace()
#2 0x79c4072616ea base::debug::StackTrace::StackTrace()
#3 0x79c407295c15 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#4 0x79c3ebc5a770 (/usr/lib/libc.so.6+0x3c76f)
#5 0x79c3ebcab32c (/usr/lib/libc.so.6+0x8d32b)
#6 0x79c3ebc5a6c8 gsignal
#7 0x79c3ebc424b8 abort
#8 0x79c3ec662b9e qAbort()
#9 0x79c3ec672588 qt_message_fatal<>()
#10 0x79c3ec66caf8 qt_message()
#11 0x79c3ec66e170 QMessageLogger::fatal()
#12 0x79c3ec6612ab qt_assert()
#13 0x79c3fb0c4c51 QList<>::first()
#14 0x79c3fb0be7df QtWebEngineCore::fillDropDataFromMimeData()
#15 0x79c3fb0bed59 QtWebEngineCore::WebContentsAdapter::enterDrag()
#16 0x79c410b6902e QWebEngineView::dragEnterEvent()
#17 0x79c410365058 QWidget::event()
#18 0x79c410b68e0a QWebEngineView::event()
#19 0x79c4102d2b74 QApplicationPrivate::notify_helper()
#20 0x79c4102d1af5 QApplication::notify()
#21 0x79c3ec72f3dd QCoreApplication::notifyInternal2()
#22 0x79c3ec72f47c QCoreApplication::forwardEvent()
#23 0x79c41039a21a QWidgetWindow::handleDragEnterEvent()
#24 0x79c41039a64c QWidgetWindow::handleDragMoveEvent()
#25 0x79c4103971ac QWidgetWindow::event()
#26 0x79c4102d2b74 QApplicationPrivate::notify_helper()
#27 0x79c4102d296a QApplication::notify()
#28 0x79c3ec72f3dd QCoreApplication::notifyInternal2()
#29 0x79c3ec72ffbb QCoreApplication::sendEvent()
#30 0x79c3ee3a1f5b QGuiApplicationPrivate::processDrag()
#31 0x79c3ee4582a4 QWindowSystemInterface::handleDrag()
#32 0x79c3e75ce344 QXcbDrag::handle_xdnd_position()
#33 0x79c3e75ce87e QXcbDrag::handlePosition()
#34 0x79c3e75b6753 QXcbWindow::handleClientMessageEvent()
#35 0x79c3e7536a13 QXcbConnection::handleXcbEvent()
#36 0x79c3e75386e0 QXcbConnection::processXcbEvents()
#37 0x79c3e7576ed8 xcbSourceDispatch()
#38 0x79c3e852d199 (/usr/lib/libglib-2.0.so.0.8000.0+0x5a198)
#39 0x79c3e858c3bf (/usr/lib/libglib-2.0.so.0.8000.0+0xb93be)
#40 0x79c3e852c712 g_main_context_iteration
#41 0x79c3ecb86444 QEventDispatcherGlib::processEvents()
#42 0x79c3e757712c QXcbGlibEventDispatcher::processEvents()
#43 0x79c3ec745b63 QEventLoop::processEvents()
#44 0x79c3ec745ece QEventLoop::exec()
#45 0x79c3ec72fd80 QCoreApplication::exec()
#46 0x79c3ee39bd42 QGuiApplication::exec()
#47 0x79c4102cfb2b QApplication::exec()
#48 0x650438715392 main
#49 0x79c3ebc43cd0 (/usr/lib/libc.so.6+0x25ccf)
#50 0x79c3ebc43d8a __libc_start_main
#51 0x6504386f8775 _start
r8: 000065043a2a2010 r9: 0000000000000007 r10: 0000000000000008 r11: 0000000000000246
r12: 000065043a98b050 r13: 0000000000000006 r14: 0000000000000001 r15: 000065043aad6ff0
di: 000000000003f29c si: 000000000003f29c bp: 000079c3e7a81380 bx: 000000000003f29c
dx: 0000000000000006 ax: 0000000000000000 cx: 000079c3ebcab32c sp: 00007ffe718dda30
ip: 000079c3ebcab32c efl: 0000000000000246 cgf: 002b000000000033 erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
[1] 258716 IOT instruction (core dumped) ./simplebrowser
The qtbase/examples/widgets/draganddrop/dropsite example shows an empty text/url-list: