From 728581d8d7e62750925d449b000f84c4a5c585a5 Mon Sep 17 00:00:00 2001 From: Schmarni Date: Sat, 24 Jan 2026 20:50:37 +0100 Subject: [PATCH] fix(openxr): don't crash when failing to locate views Signed-off-by: Schmarni --- crates/bevy_openxr/src/openxr/render.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/crates/bevy_openxr/src/openxr/render.rs b/crates/bevy_openxr/src/openxr/render.rs index 02342f3..63fa495 100644 --- a/crates/bevy_openxr/src/openxr/render.rs +++ b/crates/bevy_openxr/src/openxr/render.rs @@ -7,7 +7,7 @@ use bevy_ecs::{ system::{Commands, Query, Res, ResMut}, world::World, }; -use bevy_log::{debug_span, error, info}; +use bevy_log::{debug_span, error, info, warn}; use bevy_render::{ Render, RenderApp, extract_resource::ExtractResourcePlugin, @@ -202,13 +202,16 @@ pub fn locate_views( } else { frame_state.predicted_display_time }; - let (flags, xr_views) = session + let Ok((flags, xr_views)) = session .locate_views( openxr::ViewConfigurationType::PRIMARY_STEREO, time, &ref_space, ) - .expect("Failed to locate views"); + .inspect_err(|err| warn!("failed to locate views: {err}")) + else { + return; + }; match ( flags & ViewStateFlags::ORIENTATION_VALID == ViewStateFlags::ORIENTATION_VALID,