diff options
Diffstat (limited to 'intern/ghost/intern/GHOST_XrEvent.cpp')
-rw-r--r-- | intern/ghost/intern/GHOST_XrEvent.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/intern/ghost/intern/GHOST_XrEvent.cpp b/intern/ghost/intern/GHOST_XrEvent.cpp index 30005055f9b..992f89fadeb 100644 --- a/intern/ghost/intern/GHOST_XrEvent.cpp +++ b/intern/ghost/intern/GHOST_XrEvent.cpp @@ -35,25 +35,25 @@ static bool GHOST_XrEventPollNext(XrInstance instance, XrEventDataBuffer &r_even GHOST_TSuccess GHOST_XrEventsHandle(GHOST_XrContextHandle xr_contexthandle) { - GHOST_XrContext *xr_context = (GHOST_XrContext *)xr_contexthandle; - XrEventDataBuffer event_buffer; /* Structure big enough to hold all possible events. */ - - if (xr_context == NULL) { + if (xr_contexthandle == nullptr) { return GHOST_kFailure; } - while (GHOST_XrEventPollNext(xr_context->getInstance(), event_buffer)) { + GHOST_XrContext &xr_context = *(GHOST_XrContext *)xr_contexthandle; + XrEventDataBuffer event_buffer; /* Structure big enough to hold all possible events. */ + + while (GHOST_XrEventPollNext(xr_context.getInstance(), event_buffer)) { XrEventDataBaseHeader *event = (XrEventDataBaseHeader *)&event_buffer; switch (event->type) { case XR_TYPE_EVENT_DATA_SESSION_STATE_CHANGED: - xr_context->handleSessionStateChange((XrEventDataSessionStateChanged *)event); + xr_context.handleSessionStateChange((XrEventDataSessionStateChanged &)*event); return GHOST_kSuccess; case XR_TYPE_EVENT_DATA_INSTANCE_LOSS_PENDING: GHOST_XrContextDestroy(xr_contexthandle); return GHOST_kSuccess; default: - if (xr_context->isDebugMode()) { + if (xr_context.isDebugMode()) { printf("Unhandled event: %i\n", event->type); } return GHOST_kFailure; |