https://bugs.kde.org/show_bug.cgi?id=473170

            Bug ID: 473170
           Summary: Plasma crashes when dragging desktop files to Firefox
                    (in native Wayland mode)
    Classification: Plasma
           Product: plasmashell
           Version: master
          Platform: Other
                OS: Linux
            Status: REPORTED
          Keywords: wayland
          Severity: crash
          Priority: NOR
         Component: Folder
          Assignee: plasma-b...@kde.org
          Reporter: n...@kde.org
                CC: h...@kde.org
  Target Milestone: 1.0

100% reproducible for me. Backtrace:

#0  __GI___pthread_sigmask (how=1, newmask=<optimized out>, oldmask=0x0) at
pthread_sigmask.c:43
#1  0x00007fae8245fd4d in __GI___sigprocmask
    (how=<optimized out>, set=<optimized out>, oset=<optimized out>)
    at ../sysdeps/unix/sysv/linux/sigprocmask.c:25
#2  0x00007fae85d93d18 in KCrash::setCrashHandler(void (*)(int))
(handler=handler@entry=0x0)
    at /home/nate/kde/src/kcrash/src/kcrash.cpp:407
#3  0x00007fae85d9488e in KCrash::defaultCrashHandler(int) (sig=11)
    at /home/nate/kde/src/kcrash/src/kcrash.cpp:611
#4  0x00007fae8245fb70 in <signal handler called> () at /lib64/libc.so.6
#5  0x00007fae8381e29d in
QtPrivate::QExplicitlySharedDataPointerV2<QMapData<std::map<Qt::DropAction,
QPixmap, std::less<Qt::DropAction>, std::allocator<std::pair<Qt::DropAction
const, QPixmap> > > > >::operator bool() const (this=<optimized out>)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/tools/qshareddata_impl.h:117
#6  QMap<Qt::DropAction, QPixmap>::find(Qt::DropAction const&) const
    (key=<optimized out>, this=<optimized out>)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/tools/qmap.h:649
#7  QMap<Qt::DropAction, QPixmap>::constFind(Qt::DropAction const&) const
    (key=<optimized out>, this=<optimized out>)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/tools/qmap.h:656
#8  QDrag::dragCursor(Qt::DropAction) const (this=0x0,
action=action@entry=Qt::IgnoreAction)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/gui/kernel/qdrag.cpp:282
#9  0x00007fae83821172 in QBasicDrag::updateCursor(Qt::DropAction)
    (this=0x1eec450, action=Qt::IgnoreAction)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/gui/kernel/qsimpledrag.cpp:274
#10 0x00007fae841c8dfa in operator()
    (action=Qt::MoveAction, accepted=false, __closure=<optimized out>)
    at
/usr/src/debug/qt6-qtwayland-6.5.2-1.fc38.x86_64/src/client/qwaylanddatadevice.cpp:105
#11 QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<bool,
Qt::DropAction>, void,
QtWaylandClient::QWaylandDataDevice::startDrag(QMimeData*, Qt::DropActions,
QtWaylandClient::QWaylandWindow*)::<lambda(bool, Qt::DropAction)> >::call
(arg=<optimized out>, f=<optimized out>)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:127
#12
QtPrivate::Functor<QtWaylandClient::QWaylandDataDevice::startDrag(QMimeData*,
Qt::DropActions, QtWaylandClient::QWaylandWindow*)::<lambda(bool,
Qt::DropAction)>, 2>::call<QtPrivate::List<bool, Qt::DropAction>, void>
(arg=<optimized out>, f=<optimized out>)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:241
#13
QtPrivate::QFunctorSlotObject<QtWaylandClient::QWaylandDataDevice::startDrag(QMimeData*,
Qt::DropActions, QtWaylandClient::QWaylandWindow*)::<lambda(bool,
Qt::DropAction)>, 2, QtPrivate::List<bool, Qt::DropAction>, void>::impl(int,
QtPrivate::QSlotObjectBase *, QObject *, void **, bool *)
    (which=<optimized out>, this_=<optimized out>, r=<optimized out>,
a=<optimized out>, ret=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:409
#14 0x00007fae82bde394 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
    (a=0x7fff0d166220, r=0x1ef8bc0, this=0x4014980)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/kernel/qobjectdefs_impl.h:363
#15 doActivate<false>(QObject*, int, void**) (sender=0x3429650, signal_index=5,
argv=0x7fff0d166220)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/kernel/qobject.cpp:3992
#16 0x00007fae82bd4e17 in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**)
bject>, local_signal_index=local_signal_index@entry=2,
argv=argv@entry=0x7fff0d166220)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/kernel/qobject.cpp:4052
#17 0x00007fae841c46c9 in
QtWaylandClient::QWaylandDataSource::dndResponseUpdated(bool, Qt::DropAction)
(this=<optimized out>, _t1=<optimized out>, _t2=<optimized out>)
    at
/usr/src/debug/qt6-qtwayland-6.5.2-1.fc38.x86_64/redhat-linux-build/src/client/WaylandClient_autogen/include/moc_qwaylanddatasource_p.cpp:238
#18 0x00007fae841b9f77 in QtWayland::wl_data_source::handle_target(void*,
wl_data_source*, char const*) (data=0x3429660, object=<optimized out>,
mime_type=0x7fae5c026d9c "")
    at
/usr/src/debug/qt6-qtwayland-6.5.2-1.fc38.x86_64/redhat-linux-build/src/client/qwayland-wayland.cpp:734
#19 0x00007fae82291be6 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#20 0x00007fae8228e4bf in ffi_call_int
    (cif=cif@entry=0x7fff0d166480, fn=<optimized out>, rvalue=<optimized out>,
avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673
#21 0x00007fae8229118e in ffi_call
    (cif=cif@entry=0x7fff0d166480, fn=<optimized out>, rvalue=rvalue@entry=0x0,
avalue=avalue@entry=0x7fff0d166550) at ../src/x86/ffi64.c:710
#22 0x00007fae861dd431 in wl_closure_invoke
    (closure=closure@entry=0x7fae5c026cc0, flags=flags@entry=1,
target=<optimized out>, 
    target@entry=0x2c57800, opcode=opcode@entry=0, data=<optimized out>)
    at ../../src/wayland/src/connection.c:1025
#23 0x00007fae861d9b79 in dispatch_event (display=display@entry=0x1ee7b70,
queue=0x1ee7c60)
    at ../../src/wayland/src/wayland-client.c:1631
#24 0x00007fae861db374 in dispatch_queue (queue=0x1ee7c60, display=0x1ee7b70)
    at ../../src/wayland/src/wayland-client.c:1777
#25 wl_display_dispatch_queue_pending (display=0x1ee7b70, queue=0x1ee7c60)
    at ../../src/wayland/src/wayland-client.c:2019
#26 0x00007fae8418318d in QtWaylandClient::QWaylandDisplay::flushRequests()
(this=<optimized out>)
    at
/usr/src/debug/qt6-qtwayland-6.5.2-1.fc38.x86_64/src/client/qwaylanddisplay.cpp:234
#27 0x00007fae82bde908 in doActivate<false>(QObject*, int, void**)
    (sender=0x1ee3f80, signal_index=4, argv=0x7fff0d166788)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/kernel/qobject.cpp:4004
#28 0x00007fae82bd4e17 in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**)
    (sender=sender@entry=0x1ee3f80, m=m@entry=0x7fae83007ac0
<QAbstractEventDispatcher::staticMetaObject>,
local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/kernel/qobject.cpp:4052
#29 0x00007fae82b799e7 in QAbstractEventDispatcher::awake()
(this=this@entry=0x1ee3f80)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/redhat-linux-build/src/corelib/Core_autogen/include/moc_qabstracteventdispatcher.cpp:182
#30 0x00007fae82e2096b in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
    (this=0x1ee3f80, flags=...)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:400
#31 0x00007fae82b899f3 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
    (this=this@entry=0x7fff0d1668c0, flags=..., flags@entry=...)
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/global/qflags.h:34
#32 0x00007fae82b8569d in QCoreApplication::exec() ()
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/corelib/global/qflags.h:74
#33 0x00007fae833f917d in QGuiApplication::exec() ()
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/gui/kernel/qguiapplication.cpp:1908
#34 0x00007fae843c0a69 in QApplication::exec() ()
    at
/usr/src/debug/qt6-qtbase-6.5.2-1.fc38.x86_64/src/widgets/kernel/qapplication.cpp:2566
#35 0x0000000000424b59 in main(int, char**) (argc=<optimized out>,
argv=<optimized out>)
    at /home/nate/kde/src/plasma-workspace/shell/main.cpp:236

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to