Bug 479246

Summary: systemsettings segmentation fault when applying change to GTK application theme
Product: [Applications] systemsettings Reporter: John Veness <john.kde>
Component: kcm_styleAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: mail, nate, nicolas.fella
Priority: NOR Keywords: drkonqi
Version: 5.27.10   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description John Veness 2024-01-01 12:50:08 UTC
Application: systemsettings (5.27.10)

Qt Version: 5.15.11
Frameworks Version: 5.113.0
Operating System: Linux 6.6.7-1-default x86_64
Windowing System: X11
Distribution: "openSUSE Tumbleweed"
DrKonqi: 5.27.10 [KCrashBackend]

-- Information about the crash:
In systemsettings, Appearance, Application Style, Configure GNOME/GTK Application Style, change GTK theme from (e.g.) Breeze to Default, click Apply. systemsettings will segfault. Repeatable, e.g. if changing Default to Breeze.

The crash can be reproduced every time.

-- Backtrace:
Application: System Settings (systemsettings), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f5d9d3a9fcb in  ()
#9  0x00007f5df9d69d8f in <emit signal 'notify' on instance ???> (instance=instance@entry=0x562d8e3f3180, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3675
    #5  0x00007f5df9d4f468 in g_closure_invoke (closure=0x562d8e848f60, return_value=0x0, n_param_values=2, param_values=0x7ffcd0da0e90, invocation_hint=0x7ffcd0da0de0) at ../gobject/gclosure.c:832
    #6  0x00007f5df9d6261c in signal_emit_unlocked_R (node=node@entry=0x7ffcd0da0f60, detail=detail@entry=264, instance=instance@entry=0x562d8e3f3180, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcd0da0e90) at ../gobject/gsignal.c:3980
    #7  0x00007f5df9d64031 in signal_emit_valist_unlocked (instance=instance@entry=0x562d8e3f3180, signal_id=signal_id@entry=1, detail=detail@entry=264, var_args=var_args@entry=0x7ffcd0da10c0) at ../gobject/gsignal.c:3612
    #8  0x00007f5df9d69ce2 in g_signal_emit_valist (instance=0x562d8e3f3180, signal_id=1, detail=264, var_args=0x7ffcd0da10c0) at ../gobject/gsignal.c:3355
#10 0x00007f5df9d536e4 in g_object_dispatch_properties_changed (object=0x562d8e3f3180, n_pspecs=<optimized out>, pspecs=<optimized out>) at ../gobject/gobject.c:1427
#11 0x00007f5df9d54038 in g_object_notify_queue_thaw (object=0x562d8e3f3180, nqueue=<optimized out>) at ../gobject/gobject.c:358
#12 0x00007f5df9d57ee6 in g_object_set_valist (var_args=0x7ffcd0da1360, first_property_name=<optimized out>, object=<optimized out>) at ../gobject/gobject.c:2792
#13 g_object_set_valist (object=<optimized out>, first_property_name=<optimized out>, var_args=0x7ffcd0da1360) at ../gobject/gobject.c:2741
#14 0x00007f5df9d58ac3 in g_object_set (_object=0x562d8e3f3180, first_property_name=0x7f5db14833e8 "gtk-shell-shows-menubar") at ../gobject/gobject.c:2956
#15 0x00007f5db14823df in set_gtk_shell_shows_menubar () at /usr/lib64/gtk-2.0/modules/libappmenu-gtk-module.so
#16 0x00007f5db14824ac in watch_registrar_dbus () at /usr/lib64/gtk-2.0/modules/libappmenu-gtk-module.so
#17 0x00007f5db148078b in gtk_module_init () at /usr/lib64/gtk-2.0/modules/libappmenu-gtk-module.so
#18 0x00007f5d9c554fb2 in load_module (name=0x562d8e90dae0 "appmenu-gtk-module", module_list=0x0) at /usr/src/debug/gtk-2.24.33/gtk/gtkmodules.c:341
#19 load_modules (module_str=<optimized out>) at /usr/src/debug/gtk-2.24.33/gtk/gtkmodules.c:421
#20 0x00007f5d9c5a8fa8 in _gtk_modules_settings_changed (modules=0x562d8e438ce0 " appmenu-gtk-module ", settings=0x562d8e3f3180) at /usr/src/debug/gtk-2.24.33/gtk/gtkmodules.c:579
#21 settings_update_modules (settings=0x562d8e3f3180) at /usr/src/debug/gtk-2.24.33/gtk/gtksettings.c:2238
#22 gtk_settings_notify (object=0x562d8e3f3180, pspec=<optimized out>) at /usr/src/debug/gtk-2.24.33/gtk/gtksettings.c:1396
#27 0x00007f5df9d69d8f in <emit signal 'notify' on instance ???> (instance=instance@entry=0x562d8e3f3180, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3675
    #23 0x00007f5df9d4f468 in g_closure_invoke (closure=0x562d8e554d90, return_value=0x0, n_param_values=2, param_values=0x7ffcd0da1740, invocation_hint=0x7ffcd0da1690) at ../gobject/gclosure.c:832
    #24 0x00007f5df9d62758 in signal_emit_unlocked_R (node=node@entry=0x7ffcd0da1810, detail=detail@entry=121, instance=instance@entry=0x562d8e3f3180, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcd0da1740) at ../gobject/gsignal.c:3813
    #25 0x00007f5df9d64031 in signal_emit_valist_unlocked (instance=instance@entry=0x562d8e3f3180, signal_id=signal_id@entry=1, detail=detail@entry=121, var_args=var_args@entry=0x7ffcd0da1970) at ../gobject/gsignal.c:3612
    #26 0x00007f5df9d69ce2 in g_signal_emit_valist (instance=0x562d8e3f3180, signal_id=1, detail=121, var_args=0x7ffcd0da1970) at ../gobject/gsignal.c:3355
#28 0x00007f5df9d536e4 in g_object_dispatch_properties_changed (object=0x562d8e3f3180, n_pspecs=<optimized out>, pspecs=<optimized out>) at ../gobject/gobject.c:1427
#29 0x00007f5df9d5662e in g_object_notify_by_spec_internal (pspec=<optimized out>, object=0x562d8e3f3180) at ../gobject/gobject.c:1551
#30 g_object_notify (object=0x562d8e3f3180, property_name=<optimized out>) at ../gobject/gobject.c:1601
#31 0x00007f5d9c5a5fff in apply_queued_setting (data=0x562d8e3f3180, pspec=0x562d8e2fb190, qvalue=0x562d8e058c90) at /usr/src/debug/gtk-2.24.33/gtk/gtksettings.c:1519
#32 0x00007f5d9c5879ec in _gtk_settings_set_property_value_from_rc (new_value=0x7ffcd0da1b70, prop_name=0x562d8e189950 "gtk-modules", settings=<optimized out>) at /usr/src/debug/gtk-2.24.33/gtk/gtksettings.c:1738
#33 gtk_rc_parse_statement (scanner=0x562d8f6f9880, context=<optimized out>) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:2972
#34 gtk_rc_parse_any (context=0x562d8e18ad10, input_name=<optimized out>, input_fd=<optimized out>, input_string=<optimized out>) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:2281
#35 0x00007f5d9c5890a5 in gtk_rc_context_parse_one_file (context=0x562d8e18ad10, filename=0x562d8e554af0 "/home/john/.gtkrc-2.0", priority=<optimized out>, reload=<optimized out>) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:1033
#36 0x00007f5d9c58926e in gtk_rc_context_parse_file (context=0x562d8e18ad10, filename=0x562d8e554af0 "/home/john/.gtkrc-2.0", priority=12, reload=0) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:1099
#37 0x00007f5d9c58a1cf in gtk_rc_parse_default_files (context=0x562d8e18ad10) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:862
#38 IA__gtk_rc_reparse_all_for_settings (settings=settings@entry=0x562d8e3f3180, force_load=force_load@entry=1) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:1809
#39 0x00007f5d9c58a3de in gtk_rc_settings_changed (pspec=<optimized out>, context=0x562d8e18ad10, settings=0x562d8e3f3180) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:656
#40 gtk_rc_settings_changed (settings=0x562d8e3f3180, pspec=<optimized out>, context=0x562d8e18ad10) at /usr/src/debug/gtk-2.24.33/gtk/gtkrc.c:636
#45 0x00007f5df9d69d8f in <emit signal 'notify' on instance ???> (instance=instance@entry=0x562d8e3f3180, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3675
    #41 0x00007f5df9d4f468 in g_closure_invoke (closure=0x562d8e18aeb0, return_value=0x0, n_param_values=2, param_values=0x7ffcd0da1fe0, invocation_hint=0x7ffcd0da1f30) at ../gobject/gclosure.c:832
    #42 0x00007f5df9d6261c in signal_emit_unlocked_R (node=node@entry=0x7ffcd0da20b0, detail=detail@entry=113, instance=instance@entry=0x562d8e3f3180, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7ffcd0da1fe0) at ../gobject/gsignal.c:3980
    #43 0x00007f5df9d64031 in signal_emit_valist_unlocked (instance=instance@entry=0x562d8e3f3180, signal_id=signal_id@entry=1, detail=detail@entry=113, var_args=var_args@entry=0x7ffcd0da2210) at ../gobject/gsignal.c:3612
    #44 0x00007f5df9d69ce2 in g_signal_emit_valist (instance=0x562d8e3f3180, signal_id=1, detail=113, var_args=0x7ffcd0da2210) at ../gobject/gsignal.c:3355
#46 0x00007f5df9d536e4 in g_object_dispatch_properties_changed (object=0x562d8e3f3180, n_pspecs=<optimized out>, pspecs=<optimized out>) at ../gobject/gobject.c:1427
#47 0x00007f5df9d5662e in g_object_notify_by_spec_internal (pspec=<optimized out>, object=0x562d8e3f3180) at ../gobject/gobject.c:1551
#48 g_object_notify (object=0x562d8e3f3180, property_name=<optimized out>) at ../gobject/gobject.c:1601
#49 0x00007f5d9d6ee51e in gdk_event_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at x11/gdkevents-x11.c:2425
#50 0x00007f5dfba66f30 in  () at /lib64/libglib-2.0.so.0
#51 0x00007f5dfba68b58 in  () at /lib64/libglib-2.0.so.0
#52 0x00007f5dfba6920c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#53 0x00007f5dfd1460d6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x562d8d19af70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#54 0x00007f5dcbe1fa08 in runRdb(unsigned int) (flags=<optimized out>) at /usr/include/qt5/QtCore/qflags.h:121
#55 0x00007f5dcbe403a8 in KCMStyle::save() (this=0x562d8d42d790) at /usr/src/debug/plasma-workspace-5.27.10/kcms/style/kcmstyle.cpp:293
#56 0x00007f5dfe366d32 in KCModuleQml::save() (this=0x562d8ea96220) at /usr/src/debug/kcmutils-5.113.0/src/kcmoduleqml.cpp:306
#57 0x00007f5dfe36e967 in KCModuleProxy::save() (this=<optimized out>) at /usr/src/debug/kcmutils-5.113.0/src/kcmoduleproxy.cpp:279
#58 0x00007f5dfeb4c931 in ModuleView::moduleSave(KCModuleProxy*) (this=0x562d8d50f5f0, module=<optimized out>) at /usr/src/debug/systemsettings-5.27.10/core/ModuleView.cpp:380
#59 0x00007f5dfeb4cc9e in ModuleView::moduleSave() (this=<optimized out>) at /usr/src/debug/systemsettings-5.27.10/core/ModuleView.cpp:371
#60 0x00007f5dfeb511ae in ModuleView::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=0x7ffcd0da28b0) at /usr/src/debug/systemsettings-5.27.10/build/core/systemsettingsview_autogen/EWIEGA46WW/moc_ModuleView.cpp:133
#61 0x00007f5dfd1253e3 in doActivate<false>(QObject*, int, void**) (sender=0x562d8d5f1660, signal_index=9, argv=0x7ffcd0da28b0) at kernel/qobject.cpp:3937
#62 0x00007f5dfd11e0af in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x562d8d5f1660, m=m@entry=0x7f5dfe2c0280 <QAbstractButton::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7ffcd0da28b0) at kernel/qobject.cpp:3985
#63 0x00007f5dfde96ae2 in QAbstractButton::clicked(bool) (this=this@entry=0x562d8d5f1660, _t1=<optimized out>) at .moc/moc_qabstractbutton.cpp:308
#64 0x00007f5dfde96d4a in QAbstractButtonPrivate::emitClicked() (this=0x562d8d6f48f0) at widgets/qabstractbutton.cpp:416
#65 0x00007f5dfde98587 in QAbstractButtonPrivate::click() (this=0x562d8d6f48f0) at widgets/qabstractbutton.cpp:409
#66 0x00007f5dfde98797 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) (this=0x562d8d5f1660, e=0x7ffcd0da2e40) at widgets/qabstractbutton.cpp:1045
#67 0x00007f5dfdde6d58 in QWidget::event(QEvent*) (this=0x562d8d5f1660, event=0x7ffcd0da2e40) at kernel/qwidget.cpp:9045
#68 0x00007f5dfdda519e in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x562d8d0b00f0, receiver=receiver@entry=0x562d8d5f1660, e=e@entry=0x7ffcd0da2e40) at kernel/qapplication.cpp:3640
#69 0x00007f5dfddad5cf in QApplication::notify(QObject*, QEvent*) (this=<optimized out>, receiver=<optimized out>, e=0x7ffcd0da2e40) at kernel/qapplication.cpp:3084
#70 0x00007f5dfd0ed198 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x562d8d5f1660, event=0x7ffcd0da2e40) at kernel/qcoreapplication.cpp:1064
#71 0x00007f5dfd0ed36e in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1474
#72 0x00007f5dfddab92e in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) (receiver=receiver@entry=0x562d8d5f1660, event=event@entry=0x7ffcd0da2e40, alienWidget=<optimized out>, nativeWidget=0x562d8d1b4320, buttonDown=buttonDown@entry=0x7f5dfe2f2330 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2622
#73 0x00007f5dfddff7ed in QWidgetWindow::handleMouseEvent(QMouseEvent*) (this=this@entry=0x562d8d6b3800, event=event@entry=0x7ffcd0da30f0) at kernel/qwidgetwindow.cpp:684
#74 0x00007f5dfde02d0f in QWidgetWindow::event(QEvent*) (this=0x562d8d6b3800, event=0x7ffcd0da30f0) at kernel/qwidgetwindow.cpp:300
#75 0x00007f5dfdda519e in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x562d8d6b3800, e=0x7ffcd0da30f0) at kernel/qapplication.cpp:3640
#76 0x00007f5dfd0ed198 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x562d8d6b3800, event=0x7ffcd0da30f0) at kernel/qcoreapplication.cpp:1064
#77 0x00007f5dfd0ed36e in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1474
#78 0x00007f5dfd57d0db in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (e=0x562d8f6cba70) at kernel/qguiapplication.cpp:2285
#79 0x00007f5dfd55038c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#80 0x00007f5df6ef954a in xcbSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at qxcbeventdispatcher.cpp:105
#81 0x00007f5dfba66f30 in  () at /lib64/libglib-2.0.so.0
#82 0x00007f5dfba68b58 in  () at /lib64/libglib-2.0.so.0
#83 0x00007f5dfba6920c in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#84 0x00007f5dfd1460d6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x562d8d19af70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#85 0x00007f5dfd0ebc2b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffcd0da3420, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#86 0x00007f5dfd0f40c0 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#87 0x00007f5dfd57057c in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1870
#88 0x00007f5dfdda5115 in QApplication::exec() () at kernel/qapplication.cpp:2832
#89 0x0000562d8ca9a05c in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/systemsettings-5.27.10/app/main.cpp:188
[Inferior 1 (process 15830) detached]

Reported using DrKonqi
Comment 1 John Veness 2024-07-06 14:37:32 UTC
This seems to have been fixed recently (I'm currently running Plasma 6.1.2, but not sure exactly when it was fixed).
Comment 2 Nicolas Fella 2024-09-01 12:09:04 UTC

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