I'll check this: --- mutter-48.1.orig/src/core/place.c 2025-04-01 14:41:18.000000000 +0200 +++ mutter-48.1/src/core/place.c 2025-07-29 19:45:00.853407108 +0200 @@ -201,6 +201,20 @@ */ current = meta_backend_get_current_logical_monitor (backend); + + if (!current) { + g_message ("ASSERTION WORKAROUND find_next_cascade"); + MetaMonitorManager *monitor_manager = + meta_backend_get_monitor_manager (backend); + + current = + meta_monitor_manager_get_primary_logical_monitor (monitor_manager); + + if (!current) { + g_message ("ASSERTION WORKAROUND: NO LOGICAL MONITORS AT ALL find_next_cascade"); + return; + } + } meta_window_get_work_area_for_logical_monitor (window, current, &work_area); meta_window_get_frame_rect (window, &frame_rect); @@ -990,6 +1004,21 @@ windows = find_windows_relevant_for_placement (window); logical_monitor = meta_backend_get_current_logical_monitor (backend); + if (!logical_monitor) + { + g_message ("ASSERTION WORKAROUND"); + MetaMonitorManager *monitor_manager = + meta_backend_get_monitor_manager (backend); + + logical_monitor = + meta_monitor_manager_get_primary_logical_monitor (monitor_manager); + + if (!logical_monitor) { + g_message ("ASSERTION WORKAROUND: NO LOGICAL MONITORS AT ALL"); + goto done; + } + } + place_centered = window_place_centered (window); if (place_centered)
because there was another meta_window_get_work_area_for_logical_monitor in find_next_cascade P.S. yes, this mitigates issue, logs: lip 29 19:52:52 F2A gnome-shell[3569]: [MUTTER DEBUG] Checking logical monitors for point (4813,000000, 0,000000) lip 29 19:52:52 F2A gnome-shell[3569]: [MUTTER DEBUG] Monitor: x=0 y=0 width=1920 height=1080 lip 29 19:52:52 F2A gnome-shell[3569]: [MUTTER DEBUG] Checking logical monitors for point (4813,000000, 0,000000) lip 29 19:52:52 F2A gnome-shell[3569]: [MUTTER DEBUG] Monitor: x=0 y=0 width=1920 height=1080 lip 29 19:52:52 F2A gnome-shell[3569]: meta_monitor_manager_get_logical_monitor_from_number: assertion '(unsigned int) number < g_list_length (manager->logical_monitors)' failed lip 29 19:52:52 F2A gnome-shell[3569]: meta_workspace_get_work_area_for_monitor: assertion 'logical_monitor != NULL' failed lip 29 19:52:52 F2A gnome-shell[3569]: meta_monitor_manager_get_logical_monitor_from_number: assertion '(unsigned int) number < g_list_length (manager->logical_monitors)' failed lip 29 19:52:52 F2A gnome-shell[3569]: meta_workspace_get_work_area_for_monitor: assertion 'logical_monitor != NULL' failed lip 29 19:52:52 F2A gnome-shell[3569]: [MUTTER DEBUG] Checking logical monitors for point (4480,000000, 0,000000) lip 29 19:52:52 F2A gnome-shell[3569]: [MUTTER DEBUG] Monitor: x=0 y=0 width=1920 height=1080 lip 29 19:52:52 F2A xdg-desktop-por[4107]: Monitor 'Dell Inc. 27"' has no configuration which is-current! lip 29 19:52:52 F2A xdg-desktop-por[4107]: Monitor 'Dell Inc. 27"' has no configuration which is-current! lip 29 19:52:52 F2A gnome-shell[3569]: meta_display_get_monitor_in_fullscreen: assertion 'monitor >= 0 && monitor < n_logical_monitors' failed lip 29 19:52:52 F2A gnome-shell[3569]: meta_monitor_manager_get_logical_monitor_from_number: assertion '(unsigned int) number < g_list_length (manager->logical_monitors)' failed lip 29 19:52:52 F2A gnome-shell[3569]: meta_workspace_get_work_area_for_monitor: assertion 'logical_monitor != NULL' failed lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Checking logical monitors for point (4480,000000, 0,000000) lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Monitor: x=0 y=0 width=1920 height=1080 lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Checking logical monitors for point (4480,000000, 0,000000) lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Monitor: x=0 y=0 width=1920 height=1080 lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Checking logical monitors for point (4480,000000, 0,000000) lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Monitor: x=0 y=0 width=1920 height=1080 lip 29 19:52:53 F2A gnome-shell[3569]: ASSERTION WORKAROUND lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Checking logical monitors for point (4480,000000, 0,000000) lip 29 19:52:53 F2A gnome-shell[3569]: [MUTTER DEBUG] Monitor: x=0 y=0 width=1920 height=1080 lip 29 19:52:53 F2A gnome-shell[3569]: ASSERTION WORKAROUND find_next_cascade lip 29 19:52:53 F2A gnome-shell[3569]: Overwriting existing binding of keysym 39 with keysym 39 (keycode 12). -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2117277 Title: gnome-shell crash on unplugging external monitor – meta_window_get_work_area_for_logical_monitor assertion To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/2117277/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs