aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLenny Komow <lenny@lunarg.com>2018-02-22 11:54:18 -0700
committerMike Schuchardt <mikes@lunarg.com>2018-03-09 13:54:31 -0700
commitfc42138a3ce3337dda95b2739a2f05140fc05bfd (patch)
tree1c5e42e8a94ac24673df6517fe9fd8cc3c352c56
parent7e59e52a997d0d98bea3e140b4ca2d19b38666d4 (diff)
downloadusermoji-fc42138a3ce3337dda95b2739a2f05140fc05bfd.tar.xz
loader: Fix debug_report not returning NULL
Fix a bug where debug_report would be treated as an unknown extension if it was used without being enabled.
-rw-r--r--loader/debug_utils.c42
1 files changed, 19 insertions, 23 deletions
diff --git a/loader/debug_utils.c b/loader/debug_utils.c
index 36891319..1a10edce 100644
--- a/loader/debug_utils.c
+++ b/loader/debug_utils.c
@@ -891,29 +891,25 @@ bool debug_utils_InstanceGpa(struct loader_instance *ptr_instance, const char *n
*addr = NULL;
- if (ptr_instance->enabled_known_extensions.ext_debug_report == 1) {
- if (!strcmp("vkCreateDebugReportCallbackEXT", name)) {
- *addr = (void *)debug_utils_CreateDebugReportCallbackEXT;
- ret_type = true;
- } else if (!strcmp("vkDestroyDebugReportCallbackEXT", name)) {
- *addr = (void *)debug_utils_DestroyDebugReportCallbackEXT;
- ret_type = true;
- } else if (!strcmp("vkDebugReportMessageEXT", name)) {
- *addr = (void *)debug_utils_DebugReportMessageEXT;
- return true;
- }
- }
- if (ptr_instance->enabled_known_extensions.ext_debug_utils == 1) {
- if (!strcmp("vkCreateDebugUtilsMessengerEXT", name)) {
- *addr = (void *)debug_utils_CreateDebugUtilsMessengerEXT;
- ret_type = true;
- } else if (!strcmp("vkDestroyDebugUtilsMessengerEXT", name)) {
- *addr = (void *)debug_utils_DestroyDebugUtilsMessengerEXT;
- ret_type = true;
- } else if (!strcmp("vkSubmitDebugUtilsMessageEXT", name)) {
- *addr = (void *)debug_utils_SubmitDebugUtilsMessageEXT;
- ret_type = true;
- }
+ if (!strcmp("vkCreateDebugReportCallbackEXT", name)) {
+ *addr = ptr_instance->enabled_known_extensions.ext_debug_report == 1 ? (void *)debug_utils_CreateDebugReportCallbackEXT : NULL;
+ ret_type = true;
+ } else if (!strcmp("vkDestroyDebugReportCallbackEXT", name)) {
+ *addr = ptr_instance->enabled_known_extensions.ext_debug_report == 1 ? (void *)debug_utils_DestroyDebugReportCallbackEXT : NULL;
+ ret_type = true;
+ } else if (!strcmp("vkDebugReportMessageEXT", name)) {
+ *addr = ptr_instance->enabled_known_extensions.ext_debug_report == 1 ? (void *)debug_utils_DebugReportMessageEXT : NULL;
+ return true;
+ }
+ if (!strcmp("vkCreateDebugUtilsMessengerEXT", name)) {
+ *addr = ptr_instance->enabled_known_extensions.ext_debug_utils == 1 ? (void *)debug_utils_CreateDebugUtilsMessengerEXT : NULL;
+ ret_type = true;
+ } else if (!strcmp("vkDestroyDebugUtilsMessengerEXT", name)) {
+ *addr = ptr_instance->enabled_known_extensions.ext_debug_utils == 1 ? (void *)debug_utils_DestroyDebugUtilsMessengerEXT : NULL;
+ ret_type = true;
+ } else if (!strcmp("vkSubmitDebugUtilsMessageEXT", name)) {
+ *addr = ptr_instance->enabled_known_extensions.ext_debug_utils == 1 ? (void *)debug_utils_SubmitDebugUtilsMessageEXT : NULL;
+ ret_type = true;
}
return ret_type;