Bug 475330

Summary: Plasmashell reproducible crash starting Firefox
Product: [Plasma] plasmashell Reporter: Parag W <parag.lkml>
Component: Task Manager and Icons-Only Task Manager widgetsAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: normal CC: nicolas.fella, qydwhotmail
Priority: NOR    
Version: 5.27.8   
Target Milestone: 1.0   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Parag W 2023-10-07 16:55:02 UTC
SUMMARY
On Fedora 38 with distro packages, a recent update to Firefox led to Plasmashell crashing every time when Firefox is launched via the desktop entry - either through the search or through the pin on the Task manager. The Desktop entry itself seems to be valid but removing it and then manually recreating a minimal one fixed the issue for me. 

Stack Trace
                                                                                                                                                   
Thread 1 "plasmashell" received signal SIGABRT, Aborted.
__pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
Downloading source file /usr/src/debug/glibc-2.37-10.fc38.x86_64/nptl/pthread_kill.c
44            return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;                                                            
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007fc5b94b08f3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007fc5b945fafe in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3  0x00007fc5b944887f in __GI_abort () at abort.c:79
#4  0x00007fc5b886acf2 in _dbus_abort () at ../../dbus/dbus-sysdeps.c:101
#5  0x00007fc5b8893102 in _dbus_warn_check_failed
    (format=0x7fc5b88a0cf0 "arguments to %s() were incorrect, assertion \"%s\" failed in file %s line %d.\nThis is normally a bug in some application using the D-Bus library.\n") at ../../dbus/dbus-internals.c:289
#6  0x00007fc5b8881ab1 in dbus_message_new_method_call
    (destination=0x5629102a0268 "firefox", path=0x562910aa35a8 "/firefox", iface=0x562911a6d228 "org.freedesktop.Application", method=0x562911a85398 "Activate") at ../../dbus/dbus-message.c:1375
#7  0x00007fc5baf451fc in q_dbus_message_new_method_call
    (method=0x562911a85398 "Activate", interface=0x562911a6d228 "org.freedesktop.Application", path=0x562910aa35a8 "/firefox", bus_name=<optimized out>) at /usr/src/debug/qt5-qtbase-5.15.10-9.fc38.x86_64/src/dbus/qdbus_symbols_p.h:381
#8  QDBusMessagePrivate::toDBusMessage(QDBusMessage const&, QFlags<QDBusConnection::ConnectionCapability>, QDBusError*)
    (message=..., capabilities=..., error=error@entry=0x7ffd28114640) at qdbusmessage.cpp:139
#9  0x00007fc5baf3e635 in QDBusConnectionPrivate::sendWithReplyAsync(QDBusMessage const&, QObject*, char const*, char const*, int)
    (this=0x7fc5a0001680, message=..., receiver=receiver@entry=0x0, returnMethod=returnMethod@entry=0x0, errorMethod=errorMethod@entry=0x0, timeout=timeout@entry=-1) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#10 0x00007fc5baf2aea1 in QDBusConnection::asyncCall(QDBusMessage const&, int) const
    (this=this@entry=0x7ffd281147a0, message=..., timeout=timeout@entry=-1) at qdbusconnection.cpp:711
#11 0x00007fc5ba67c620 in DBusActivationRunner::startProcess() (this=0x562914550c70)
    at /usr/src/debug/kf5-kio-5.110.0-2.fc38.x86_64/src/gui/dbusactivationrunner.cpp:71
#12 0x00007fc5b9ce8481 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffd28114890, r=<optimized out>, this=0x562913933580)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
--Type <RET> for more, q to quit, c to continue without paging--
#13 doActivate<false>(QObject*, int, void**) (sender=0x562914550c70, signal_index=5, argv=0x7ffd28114890) at kernel/qobject.cpp:3925
#14 0x00007fc5b9ce33a7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
    (sender=<optimized out>, m=<optimized out>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x0) at kernel/qobject.cpp:3985
#15 0x00007fc5ba6767f7 in KProcessRunner::xdgActivationTokenArrived() (this=<optimized out>)
    at /usr/src/debug/kf5-kio-5.110.0-2.fc38.x86_64/redhat-linux-build/src/gui/KF5KIOGui_autogen/include/moc_kprocessrunner_p.cpp:169
#16 0x00007fc5ba676b14 in operator() (token=<optimized out>, tokenSerial=<optimized out>, __closure=0x562914557d00)
    at /usr/src/debug/kf5-kio-5.110.0-2.fc38.x86_64/src/gui/kprocessrunner.cpp:300
#17 QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<int, const QString&>, void, KProcessRunner::init(const KService::Ptr&, const QString&, const QString&, const QString&, const QByteArray&)::<lambda(int, const QString&)> >::call (arg=<optimized out>, f=...)
    at /usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#18 QtPrivate::Functor<KProcessRunner::init(const KService::Ptr&, const QString&, const QString&, const QString&, const QByteArray&)::<lambda(int, const QString&)>, 2>::call<QtPrivate::List<int, QString const&>, void> (arg=<optimized out>, f=...)
    at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#19 QtPrivate::QFunctorSlotObject<KProcessRunner::init(const KService::Ptr&, const QString&, const QString&, const QString&, const QByteArray&)::<lambda(int, const QString&)>, 2, QtPrivate::List<int, const QString&>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *)
    (which=<optimized out>, this_=0x562914557cf0, r=<optimized out>, a=<optimized out>, ret=<optimized out>)
    at /usr/include/qt5/QtCore/qobjectdefs_impl.h:443
#20 0x00007fc5b9ce8481 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffd281149f0, r=<optimized out>, this=0x562914557cf0)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#21 doActivate<false>(QObject*, int, void**)
    (sender=0x7fc5bb7784c0 <(anonymous namespace)::Q_QGS_g_kwmInstanceContainer::innerFunction()::holder>, signal_index=18, argv=0x7ffd281149f0)
    at kernel/qobject.cpp:3925
#22 0x00007fc5b9ce33a7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
    (sender=<optimized out>, m=m@entry=0x7fc5bb776a40 <KWindowSystem::staticMetaObject>, local_signal_index=local_signal_index@entry=15, argv=argv@entry=0x7ffd281149f0) at kernel/qobject.cpp:3985
--Type <RET> for more, q to quit, c to continue without paging--
#23 0x00007fc5bb7480c7 in KWindowSystem::xdgActivationTokenArrived(int, QString const&)
    (this=<optimized out>, _t1=<optimized out>, _t2=<optimized out>)
    at /usr/src/debug/kf5-kwindowsystem-5.110.0-1.fc38.x86_64/redhat-linux-build/src/KF5WindowSystem_autogen/include/moc_kwindowsystem.cpp:503
#24 0x00007fc5b9ce8481 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffd28114af0, r=<optimized out>, this=0x56291392d230)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#25 doActivate<false>(QObject*, int, void**) (sender=0x5629101ed130, signal_index=4, argv=0x7ffd28114af0) at kernel/qobject.cpp:3925
#26 0x00007fc597fedab0 in non-virtual thunk to WaylandXdgActivationTokenV1::xdg_activation_token_v1_done(QString const&) ()
    at /usr/src/debug/kwayland-integration-5.27.8-1.fc38.x86_64/redhat-linux-build/src/windowsystem/KF5WindowSystemKWaylandPlugin_autogen/EWIEGA46WW/../../../../../src/windowsystem/waylandxdgactivationv1_p.h:19
#27 0x00007fc597ff7a29 in QtWayland::xdg_activation_token_v1::handle_done(void*, xdg_activation_token_v1*, char const*)
    (data=0x5629101ed140, object=<optimized out>, token=0x7fc59c00210c "kwin-6")
    at /usr/src/debug/kwayland-integration-5.27.8-1.fc38.x86_64/redhat-linux-build/src/windowsystem/qwayland-xdg-activation-v1.cpp:183
#28 0x00007fc5bbdbdbe6 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#29 0x00007fc5bbdba4bf in ffi_call_int
    (cif=cif@entry=0x7ffd28114d20, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0)
    at ../src/x86/ffi64.c:673
#30 0x00007fc5bbdbd18e in ffi_call (cif=cif@entry=0x7ffd28114d20, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0x7ffd28114df0)
    at ../src/x86/ffi64.c:710
#31 0x00007fc5bc19ff0e in wl_closure_invoke (closure=closure@entry=0x7fc59c002030, target=<optimized out>, 
    target@entry=0x56291161a0c0, opcode=opcode@entry=0, data=<optimized out>, flags=1) at ../src/connection.c:1025
#32 0x00007fc5bc1a0793 in dispatch_event (display=display@entry=0x56290f517840, queue=0x56290f517930) at ../src/wayland-client.c:1631
#33 0x00007fc5bc1a0a3c in dispatch_queue (queue=0x56290f517930, display=0x56290f517840) at ../src/wayland-client.c:1777
#34 wl_display_dispatch_queue_pending (display=0x56290f517840, queue=0x56290f517930) at ../src/wayland-client.c:2019
#35 0x00007fc5bb126b4d in QtWaylandClient::QWaylandDisplay::flushRequests() (this=<optimized out>)
    at /usr/src/debug/qt5-qtwayland-5.15.10-1.fc38.x86_64/src/client/qwaylanddisplay.cpp:255
--Type <RET> for more, q to quit, c to continue without paging--
#36 0x00007fc5b9cded2b in QObject::event(QEvent*) (this=0x56290f513050, e=0x7fc59c0046a0) at kernel/qobject.cpp:1347
#37 0x00007fc5ba9aeb75 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x56290f513050, e=0x7fc59c0046a0)
    at kernel/qapplication.cpp:3640
#38 0x00007fc5b9cb41a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x56290f513050, event=0x7fc59c0046a0)
    at kernel/qcoreapplication.cpp:1064
#39 0x00007fc5b9cb43c2 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>)
    at kernel/qcoreapplication.cpp:1462
#40 0x00007fc5b9cb7655 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x56290f505b20)
    at kernel/qcoreapplication.cpp:1821
#41 0x00007fc5b9cb790d in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=<optimized out>, event_type=<optimized out>)
    at kernel/qcoreapplication.cpp:1680
#42 0x00007fc5b9d06c5f in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x56290f52d2c0) at kernel/qeventdispatcher_glib.cpp:277
#43 0x00007fc5b89524fc in g_main_dispatch (context=0x7fc5a0000ee0) at ../glib/gmain.c:3460
#44 g_main_context_dispatch (context=0x7fc5a0000ee0) at ../glib/gmain.c:4200
#45 0x00007fc5b89b06b8 in g_main_context_iterate.isra.0 (context=0x7fc5a0000ee0, block=1, dispatch=1, self=<optimized out>)
    at ../glib/gmain.c:4276
#46 0x00007fc5b894fb83 in g_main_context_iteration (context=0x7fc5a0000ee0, may_block=1) at ../glib/gmain.c:4343
#47 0x00007fc5b9d06749 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x56290f5315e0, flags=...)
    at kernel/qeventdispatcher_glib.cpp:423
#48 0x00007fc5b9cb2b6b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffd28115400, flags=..., flags@entry=...)
    at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#49 0x00007fc5b9cbadfb in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#50 0x00007fc5ba160e9d in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1863
#51 0x00007fc5ba9aeae9 in QApplication::exec() () at kernel/qapplication.cpp:2832
#52 0x000056290d4d962a in main(int, char**) (argc=<optimized out>, argv=<optimized out>)
--Type <RET> for more, q to quit, c to continue without paging--
    at /usr/src/debug/plasma-workspace-5.27.8-2.fc38.x86_64/shell/main.cpp:235



STEPS TO REPRODUCE
1. Update Fedora 38
2. Try to launch firefox via Plasma Launcher 
3. crash

OBSERVED RESULT
Plasmashell crashes

EXPECTED RESULT
Firefox launches

SOFTWARE/OS VERSIONS

Linux/KDE Plasma: 5.27.8
KDE Plasma Version: 5.27.8
KDE Frameworks Version: 5.110.0
Qt Version: 5.15.10

ADDITIONAL INFORMATION
KDE/Qt from Fedora 38 RPMs.
Comment 1 Nicolas Fella 2023-10-07 17:02:48 UTC

*** This bug has been marked as a duplicate of bug 475266 ***