Crash on xrCreateSession
BanTheRewind opened this issue · comments
I'm on Windows 11, VS2022, latest Oculus app with Quest 3 over Quest Link (Windows build, not Android atm). Using Vulkan for graphics. RTX 3080 and overall up-to-date machine. I pulled down the repo today, so the code is current.
I get a crash when I call xrCreateSession
, specifically inside this method...:
extern "C" LOADER_EXPORT XRAPI_ATTR XrResult XRAPI_CALL xrCreateSession(
XrInstance instance,
const XrSessionCreateInfo* createInfo,
XrSession* session) XRLOADER_ABI_TRY {
LoaderInstance* loader_instance;
XrResult result = ActiveLoaderInstance::Get(&loader_instance, "xrCreateSession");
if (XR_SUCCEEDED(result)) {
result = loader_instance->DispatchTable()->CreateSession(instance, createInfo, session);
}
return result;
}
XRLOADER_ABI_CATCH_FALLBACK
It crashes at loader_instance->DispatchTable()->CreateSession(instance, createInfo, session);
Inspecting the loader_instance
, it appears that _messenger
is null and loader_instance
is 0. All other members appear to be valid. The arguments I'm passing in are also valid, and I am successfully calling xrGetVulkanGraphicsRequirements2KHR
before creating the session. The SDK is working otherwise. It connects to OpenXR when Oculus is running, and it appears to detect HMD changes. Once the HMD is ready to connect, it crashes after doing all the expected prep.
Here is the actual exception.
Exception thrown at 0x00007FFC1CAE077F (LibOVRRT64_1.dll) in MyApp.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.
An issue (number 2178) has been filed to correspond to this issue in the internal Khronos GitLab (Khronos members only: KHR:openxr/openxr#2178 ), to facilitate working group processes.
This GitHub issue will continue to be the main site of discussion.