SUMMARY Strawberry, the music application, crashes randomly when switching to another song in the playlist if a song's playing. This bug was already report to Strawberry's developers - see https://github.com/strawberrymusicplayer/strawberry/issues/1633 - and upon triaging it seems that the issue is with Breeze, specifically on Wayland. A backtrace is included at the bottom of this description. STEPS TO REPRODUCE 1. Install and run Strawberry; 1.1. The bug is reproducible in version 1.2.3, as well as the latest git version as of today. It also occurred in openSUSE Tumbleweed - versioning information for probably relevant software below. 2. Enable the first two options in the moodbar tab in settings; 3. Have multiple songs in a playlist; 4. Start playing a song; 5. Switch to a different one while the first is still playing. Sometimes the app will just crash. This can happen by either double-clicking the new song or pressing 'Enter' after selecting it. It seems like it can also happen if the previously playing song is paused, and it takes something like half a second after the new song starts playing for the app to crash. OBSERVED RESULT A segfault. EXPECTED RESULT The new song starts and continues to play normally. SOFTWARE/OS VERSIONS Operating System: openSUSE Tumbleweed 20250106 KDE Plasma Version: 6.2.5 KDE Frameworks Version: 6.9.0 Qt Version: 6.8.1 Kernel Version: 6.12.6-1-default (64-bit) Graphics Platform: Wayland Processors: 6 × AMD Ryzen 5 3500X 6-Core Processor Memory: 15.5 GiB of RAM Graphics Processor: NV106 ADDITIONAL INFORMATION interface: 'wl_compositor', version: 6, name: 1 interface: 'zwp_tablet_manager_v2', version: 1, name: 3 interface: 'zwp_keyboard_shortcuts_inhibit_manager_v1', version: 1, name: 4 interface: 'zxdg_decoration_manager_v1', version: 1, name: 5 interface: 'wp_viewporter', version: 1, name: 6 interface: 'wp_security_context_manager_v1', version: 1, name: 7 interface: 'wp_fractional_scale_manager_v1', version: 1, name: 8 interface: 'wl_shm', version: 1, name: 9 interface: 'wl_seat', version: 9, name: 10 interface: 'zwp_pointer_gestures_v1', version: 3, name: 11 interface: 'zwp_pointer_constraints_v1', version: 1, name: 12 interface: 'zwp_relative_pointer_manager_v1', version: 1, name: 13 interface: 'wl_data_device_manager', version: 3, name: 14 interface: 'zwlr_data_control_manager_v1', version: 2, name: 15 interface: 'wp_cursor_shape_manager_v1', version: 1, name: 16 interface: 'zwp_primary_selection_device_manager_v1', version: 1, name: 17 interface: 'org_kde_kwin_idle', version: 1, name: 18 interface: 'zwp_idle_inhibit_manager_v1', version: 1, name: 19 interface: 'ext_idle_notifier_v1', version: 1, name: 20 interface: 'org_kde_plasma_shell', version: 8, name: 21 interface: 'org_kde_kwin_appmenu_manager', version: 1, name: 22 interface: 'org_kde_kwin_server_decoration_palette_manager', version: 1, name: 23 interface: 'org_kde_plasma_virtual_desktop_management', version: 2, name: 25 interface: 'org_kde_kwin_shadow_manager', version: 2, name: 27 interface: 'org_kde_kwin_dpms_manager', version: 1, name: 28 interface: 'org_kde_kwin_server_decoration_manager', version: 1, name: 29 interface: 'kde_output_management_v2', version: 9, name: 30 interface: 'zxdg_output_manager_v1', version: 3, name: 31 interface: 'wl_subcompositor', version: 1, name: 32 interface: 'zxdg_exporter_v2', version: 1, name: 33 interface: 'zxdg_importer_v2', version: 1, name: 34 interface: 'xdg_activation_v1', version: 1, name: 37 interface: 'wp_content_type_manager_v1', version: 1, name: 39 interface: 'wp_tearing_control_manager_v1', version: 1, name: 40 interface: 'xdg_toplevel_drag_manager_v1', version: 1, name: 41 interface: 'kde_screen_edge_manager_v1', version: 1, name: 42 interface: 'frog_color_management_factory_v1', version: 1, name: 43 interface: 'wp_presentation', version: 1, name: 44 interface: 'xx_color_manager_v4', version: 1, name: 45 interface: 'xdg_wm_dialog_v1', version: 1, name: 46 interface: 'kde_external_brightness_v1', version: 1, name: 47 interface: 'wp_alpha_modifier_v1', version: 1, name: 48 interface: 'xdg_wm_base', version: 6, name: 51 interface: 'zwlr_layer_shell_v1', version: 5, name: 52 interface: 'wp_drm_lease_device_v1', version: 1, name: 54 interface: 'kde_output_order_v1', version: 1, name: 55 interface: 'zwp_text_input_manager_v1', version: 1, name: 56 interface: 'zwp_text_input_manager_v2', version: 1, name: 57 interface: 'zwp_text_input_manager_v3', version: 1, name: 58 interface: 'wl_drm', version: 2, name: 60 interface: 'zwp_linux_dmabuf_v1', version: 4, name: 61 interface: 'wp_linux_drm_syncobj_manager_v1', version: 1, name: 62 interface: 'kde_output_device_v2', version: 9, name: 63 interface: 'wl_output', version: 4, name: 64 interface: 'org_kde_kwin_blur_manager', version: 1, name: 65 interface: 'org_kde_kwin_contrast_manager', version: 2, name: 66 interface: 'org_kde_kwin_slide_manager', version: 1, name: 67 BACKTRACE: https://pastebin.com/uxyu1HQ6
Backtrace: Thread 1 (Thread 0x7ffff2d36fc0 (LWP 251367) "strawberry"): #0 0x00007ffff51baf9b in QMetaObject::cast(QObject const*) const () from /lib64/libQt6Core.so.6 #1 0x00007fffe93ebba7 in ?? () from /usr/lib64/qt6/plugins/styles/breeze6.so #2 0x00007ffff51a7fa8 in QCoreApplicationPrivate::sendThroughApplicationEventFilters(QObject*, QEvent*) () from /lib64/libQt6Core.so.6 #3 0x00007ffff73dec70 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt6Widgets.so.6 #4 0x00007ffff51ac948 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt6Core.so.6 #5 0x00007ffff51b4c78 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib64/libQt6Core.so.6 #6 0x00007ffff5403287 in ?? () from /lib64/libQt6Core.so.6 #7 0x00007ffff57e3eb8 in ?? () from /lib64/libglib-2.0.so.0 #8 0x00007ffff57e5ca8 in ?? () from /lib64/libglib-2.0.so.0 #9 0x00007ffff57e64bc in g_main_context_iteration () from /lib64/libglib-2.0.so.0 #10 0x00007ffff5400741 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6 #11 0x00007ffff51b5aa2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt6Core.so.6 #12 0x00007ffff51b5f8a in QCoreApplication::exec() () from /lib64/libQt6Core.so.6 #13 0x00005555556d28e2 in main () Unfortunately the one line we need symbols for (#1) is missing them. Can you install symbols for Breeze, reproduce the crash, and attach a new backtrace of just the crashing thread (should be thread 1, at the very bottom).
(In reply to Nate Graham from comment #1) > Backtrace: > > Thread 1 (Thread 0x7ffff2d36fc0 (LWP 251367) "strawberry"): > #0 0x00007ffff51baf9b in QMetaObject::cast(QObject const*) const () from > /lib64/libQt6Core.so.6 > #1 0x00007fffe93ebba7 in ?? () from /usr/lib64/qt6/plugins/styles/breeze6.so > #2 0x00007ffff51a7fa8 in > QCoreApplicationPrivate::sendThroughApplicationEventFilters(QObject*, > QEvent*) () from /lib64/libQt6Core.so.6 > #3 0x00007ffff73dec70 in QApplicationPrivate::notify_helper(QObject*, > QEvent*) () from /lib64/libQt6Widgets.so.6 > #4 0x00007ffff51ac948 in QCoreApplication::notifyInternal2(QObject*, > QEvent*) () from /lib64/libQt6Core.so.6 > #5 0x00007ffff51b4c78 in > QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () > from /lib64/libQt6Core.so.6 > #6 0x00007ffff5403287 in ?? () from /lib64/libQt6Core.so.6 > #7 0x00007ffff57e3eb8 in ?? () from /lib64/libglib-2.0.so.0 > #8 0x00007ffff57e5ca8 in ?? () from /lib64/libglib-2.0.so.0 > #9 0x00007ffff57e64bc in g_main_context_iteration () from > /lib64/libglib-2.0.so.0 > #10 0x00007ffff5400741 in > QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) > () from /lib64/libQt6Core.so.6 > #11 0x00007ffff51b5aa2 in > QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from > /lib64/libQt6Core.so.6 > #12 0x00007ffff51b5f8a in QCoreApplication::exec() () from > /lib64/libQt6Core.so.6 > #13 0x00005555556d28e2 in main () > > Unfortunately the one line we need symbols for (#1) is missing them. Can > you install symbols for Breeze, reproduce the crash, and attach a new > backtrace of just the crashing thread (should be thread 1, at the very > bottom). Hi there, It was fixed downstream, apparently the culprit wasn't Breeze. This should be closed - thank you!