Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong calling convention for layers on 32-bit Windows #378

Closed
SEt-t opened this issue Jan 31, 2023 · 2 comments
Closed

Wrong calling convention for layers on 32-bit Windows #378

SEt-t opened this issue Jan 31, 2023 · 2 comments
Labels
synced to gitlab Synchronized to OpenXR internal GitLab

Comments

@SEt-t
Copy link

SEt-t commented Jan 31, 2023

Loader expects xrNegotiateLoaderApiLayerInterfaceto use __stdcall convention for Win32 target:

auto negotiate = reinterpret_cast<PFN_xrNegotiateLoaderApiLayerInterface>(

typedef XrResult(XRAPI_PTR *PFN_xrNegotiateLoaderApiLayerInterface)(const XrNegotiateLoaderInfo *loaderInfo,

But layer's code specifies no calling convention:

LAYER_EXPORT XrResult xrNegotiateLoaderApiLayerInterface(const XrNegotiateLoaderInfo *loaderInfo, const char * /*apiLayerName*/,

what results in use of default one (usually, __cdecl) and crash in loader due to convention mismatch.

@rpavlik-bot rpavlik-bot added the synced to gitlab Synchronized to OpenXR internal GitLab label Feb 1, 2023
@rpavlik-bot
Copy link
Collaborator

An issue (number 1929) has been filed to correspond to this issue in the internal Khronos GitLab (Khronos members only: KHR:openxr/openxr#1929 ), to facilitate working group processes.

This GitHub issue will continue to be the main site of discussion.

@rpavlik
Copy link
Contributor

rpavlik commented Mar 23, 2023

This was fixed in 1.0.27!

@rpavlik rpavlik closed this as completed Mar 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
synced to gitlab Synchronized to OpenXR internal GitLab
Projects
None yet
Development

No branches or pull requests

3 participants