You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When trying to use CmdBeginDebugUtilsLabelEXT or any other label function from the EXT_debug_utils extenstion without a layer that intercepts the function, a null pointer is called.
Issue can be reproduced with the cube demo by removing the code that loads the validation layer and running with --validate
Exception thrown at 0x0000000000000000 in cube.exe: 0xC0000005: Access violation executing location 0x0000000000000000. occurred
> vulkan-1.dll!CmdBeginDebugUtilsLabelEXT(VkCommandBuffer_T * commandBuffer, const VkDebugUtilsLabelEXT * pLabelInfo) Line 2079 C
cube.exe!demo_draw_build_cmd(demo * demo, VkCommandBuffer_T * cmd_buf) Line 751 C
cube.exe!demo_prepare(demo * demo) Line 2230 C
cube.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * pCmdLine, int nCmdShow) Line 3815 C
The text was updated successfully, but these errors were encountered:
I believe there was an attempt to fix this issue in 4b858b5 but the fix was incomplete.
Specifically, while vkCmdBeginDebugUtilsLabelEXT now correctly skips execution if no layer implements it, vkGetDeviceProcAddr returns NULL if no layer implements it. It seems like a full solution to this issue requires substituting a dummy thunk when vkGetDeviceProcAddr is used. cc @lenny-lunarg
When trying to use CmdBeginDebugUtilsLabelEXT or any other label function from the EXT_debug_utils extenstion without a layer that intercepts the function, a null pointer is called.
Issue can be reproduced with the cube demo by removing the code that loads the validation layer and running with --validate
The text was updated successfully, but these errors were encountered: