From b439a71db3f5845c90505bd7daf1a2f8d94eb103 Mon Sep 17 00:00:00 2001 From: Dery Almas Date: Fri, 12 Dec 2025 12:01:06 +0100 Subject: [PATCH] Wayland: Fix accidental copy during global remove We were accidentally mutating a copy during cleanup of the viewporter and fractional scale manager. Thank you Aaron Franke for finding this out :D --- platform/linuxbsd/wayland/wayland_thread.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/platform/linuxbsd/wayland/wayland_thread.cpp b/platform/linuxbsd/wayland/wayland_thread.cpp index 70536d53ae6..f701e258a27 100644 --- a/platform/linuxbsd/wayland/wayland_thread.cpp +++ b/platform/linuxbsd/wayland/wayland_thread.cpp @@ -824,7 +824,7 @@ void WaylandThread::_wl_registry_on_global_remove(void *data, struct wl_registry if (name == registry->wp_viewporter_name) { for (KeyValue &pair : registry->wayland_thread->windows) { - WindowState ws = pair.value; + WindowState &ws = pair.value; if (registry->wp_viewporter) { wp_viewporter_destroy(registry->wp_viewporter); registry->wp_viewporter = nullptr; @@ -862,7 +862,7 @@ void WaylandThread::_wl_registry_on_global_remove(void *data, struct wl_registry if (name == registry->wp_fractional_scale_manager_name) { for (KeyValue &pair : registry->wayland_thread->windows) { - WindowState ws = pair.value; + WindowState &ws = pair.value; if (registry->wp_fractional_scale_manager) { wp_fractional_scale_manager_v1_destroy(registry->wp_fractional_scale_manager);