Fix incorrect handling of Debug Marker functions
authorCharles Giessen <charles@lunarg.com>
Tue, 5 Sep 2023 22:36:57 +0000 (16:36 -0600)
committerCharles Giessen <46324611+charles-lunarg@users.noreply.github.com>
Fri, 8 Sep 2023 21:56:37 +0000 (15:56 -0600)
commit40cebdf5763a0f8181da2b6c2a7ed25738a03e54
tree440326749a6c7cefbc29f388c5d91201015c8375
parenta145cbe94611404fac9adb7367950c425b0f67fe
Fix incorrect handling of Debug Marker functions

The implementation for VK_KHR_maintenance_5 exposed a bug in how the function
for debug_marker functions were gotten. The bug was to only check if a
driver supports a physical device when querying for device function pointers,
which ignores the possibility of a layer supporting a device extension. This
is an issue for VK_EXT_debug_marker, which requires trampoline functions to
properly unwrap data passed in, resulting in the various debug marker functions
returning NULL instead of a valid function pointer.
loader/generated/vk_loader_extensions.c
loader/loader.c
loader/loader_common.h
scripts/loader_extension_generator.py