From 03b25bb234207ca4b55fb9694a4e7675d50d32be Mon Sep 17 00:00:00 2001 From: galister <22305755+galister@users.noreply.github.com> Date: Thu, 15 Jan 2026 16:41:30 +0900 Subject: [PATCH] avoid steamvr overlay key collisions --- wayvr/src/backend/openvr/lines.rs | 2 +- wayvr/src/backend/openvr/overlay.rs | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/wayvr/src/backend/openvr/lines.rs b/wayvr/src/backend/openvr/lines.rs index 0a5a3979..4918dec0 100644 --- a/wayvr/src/backend/openvr/lines.rs +++ b/wayvr/src/backend/openvr/lines.rs @@ -88,7 +88,7 @@ impl LinePool { ..Default::default() }, ..OverlayWindowData::from_config(OverlayWindowConfig { - name: Arc::from(format!("wlx-line{id}")), + name: Arc::from(format!("line{id}")), default_state: Default::default(), active_state: Some(Default::default()), z_order: Z_ORDER_LINES, diff --git a/wayvr/src/backend/openvr/overlay.rs b/wayvr/src/backend/openvr/overlay.rs index ba769f44..5abdf8b3 100644 --- a/wayvr/src/backend/openvr/overlay.rs +++ b/wayvr/src/backend/openvr/overlay.rs @@ -34,7 +34,8 @@ impl OverlayWindowData { overlay: &mut OverlayManager, app: &mut AppState, ) -> anyhow::Result { - let key = format!("wlx-{}", self.config.name); + let pid = std::process::id(); + let key = format!("wlx-{pid}-{}", self.config.name); log::debug!("Create overlay with key: {}", &key); let handle = match overlay.create_overlay(&key, &key) { Ok(handle) => handle,