From af2756b50a1a35f9f180e9e9e8e49f84f6b940e6 Mon Sep 17 00:00:00 2001 From: Ryan Pavlik <ryan.pavlik@collabora.com> Date: Thu, 4 Apr 2019 18:19:15 -0500 Subject: [PATCH] st/oxr: Fix conformance issue in xrBeginFrame --- src/xrt/state_trackers/oxr/oxr_api_session.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/xrt/state_trackers/oxr/oxr_api_session.c b/src/xrt/state_trackers/oxr/oxr_api_session.c index 034f6ab66..62cee638e 100644 --- a/src/xrt/state_trackers/oxr/oxr_api_session.c +++ b/src/xrt/state_trackers/oxr/oxr_api_session.c @@ -94,8 +94,8 @@ oxr_xrWaitFrame(XrSession session, struct oxr_logger log; OXR_VERIFY_SESSION_AND_INIT_LOG(&log, session, sess, "xrWaitFrame"); if (sess->compositor == NULL) { - return oxr_error(&log, XR_ERROR_VALIDATION_FAILURE, - "xrWaitFrame is illegal headless sessions"); + return oxr_error(&log, XR_ERROR_GRAPHICS_DEVICE_INVALID, + "xrWaitFrame is illegal in headless sessions"); } OXR_VERIFY_ARG_TYPE_AND_NULL(&log, frameState, XR_TYPE_FRAME_STATE); OXR_VERIFY_ARG_NOT_NULL(&log, frameState); @@ -109,8 +109,11 @@ oxr_xrBeginFrame(XrSession session, const XrFrameBeginInfo* frameBeginInfo) struct oxr_session* sess; struct oxr_logger log; OXR_VERIFY_SESSION_AND_INIT_LOG(&log, session, sess, "xrBeginFrame"); - OXR_VERIFY_ARG_TYPE_AND_NULL(&log, frameBeginInfo, - XR_TYPE_FRAME_BEGIN_INFO); + // NULL explicitly allowed here because it's a basically empty struct. + if (frameBeginInfo != NULL) { + OXR_VERIFY_ARG_TYPE_AND_NULL(&log, frameBeginInfo, + XR_TYPE_FRAME_BEGIN_INFO); + } return oxr_session_frame_begin(&log, sess); } -- GitLab