We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
The vk::DispatchLoaderDynamic::init(vk::VkInstance) method uses vkGetInstanceProcAddr to overwrite vkGetInstanceProcAddr itself.
See https://github.com/KhronosGroup/Vulkan-Headers/blob/d594f70127b4198286b3472a48bee56e341259cd/include/vulkan/vulkan.hpp#L11864
vkGetInstanceProcAddr = PFN_vkGetInstanceProcAddr( vkGetInstanceProcAddr( instance, "vkGetInstanceProcAddr" ) );
But the value is NULL, because a valid 'instance' is provided and so it falls into the last row in the table in 4.1 "Command Function Pointers" https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#initialization-functionpointers
But then that causes a crash in the very next function pointer initialization call.
This bad behaviour was uncovered by a recent fix in the loader: KhronosGroup/Vulkan-Loader#692
The text was updated successfully, but these errors were encountered:
vulkan.hpp: Don't overwrite local vkGetInstanceProcAddr with NULL
bfe0917
Temporary fix for KhronosGroup#239 The real fix must occur upstream. See KhronosGroup/Vulkan-Hpp#1108
That was really tricky to get from the spec! Thanks for providing a fix for this issue.
Sorry, something went wrong.
Successfully merging a pull request may close this issue.
The vk::DispatchLoaderDynamic::init(vk::VkInstance) method uses vkGetInstanceProcAddr to overwrite vkGetInstanceProcAddr itself.
See https://github.com/KhronosGroup/Vulkan-Headers/blob/d594f70127b4198286b3472a48bee56e341259cd/include/vulkan/vulkan.hpp#L11864
vkGetInstanceProcAddr = PFN_vkGetInstanceProcAddr( vkGetInstanceProcAddr( instance, "vkGetInstanceProcAddr" ) );
But the value is NULL, because a valid 'instance' is provided and so it falls into the last row in the table in 4.1 "Command Function Pointers" https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#initialization-functionpointers
But then that causes a crash in the very next function pointer initialization call.
This bad behaviour was uncovered by a recent fix in the loader: KhronosGroup/Vulkan-Loader#692
The text was updated successfully, but these errors were encountered: