fix(openxr): don't crash when failing to locate views
Signed-off-by: Schmarni <marnistromer@gmail.com>
This commit is contained in:
@@ -7,7 +7,7 @@ use bevy_ecs::{
|
|||||||
system::{Commands, Query, Res, ResMut},
|
system::{Commands, Query, Res, ResMut},
|
||||||
world::World,
|
world::World,
|
||||||
};
|
};
|
||||||
use bevy_log::{debug_span, error, info};
|
use bevy_log::{debug_span, error, info, warn};
|
||||||
use bevy_render::{
|
use bevy_render::{
|
||||||
Render, RenderApp,
|
Render, RenderApp,
|
||||||
extract_resource::ExtractResourcePlugin,
|
extract_resource::ExtractResourcePlugin,
|
||||||
@@ -202,13 +202,16 @@ pub fn locate_views(
|
|||||||
} else {
|
} else {
|
||||||
frame_state.predicted_display_time
|
frame_state.predicted_display_time
|
||||||
};
|
};
|
||||||
let (flags, xr_views) = session
|
let Ok((flags, xr_views)) = session
|
||||||
.locate_views(
|
.locate_views(
|
||||||
openxr::ViewConfigurationType::PRIMARY_STEREO,
|
openxr::ViewConfigurationType::PRIMARY_STEREO,
|
||||||
time,
|
time,
|
||||||
&ref_space,
|
&ref_space,
|
||||||
)
|
)
|
||||||
.expect("Failed to locate views");
|
.inspect_err(|err| warn!("failed to locate views: {err}"))
|
||||||
|
else {
|
||||||
|
return;
|
||||||
|
};
|
||||||
|
|
||||||
match (
|
match (
|
||||||
flags & ViewStateFlags::ORIENTATION_VALID == ViewStateFlags::ORIENTATION_VALID,
|
flags & ViewStateFlags::ORIENTATION_VALID == ViewStateFlags::ORIENTATION_VALID,
|
||||||
|
|||||||
Reference in New Issue
Block a user