diff options
| author | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-06-01 14:45:27 -0600 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-06-18 10:18:19 -0600 |
| commit | 56dc45b851d14f17dce9f9a3894ceac064908fb7 (patch) | |
| tree | 9f2b2d992b003d4763ba250e1cfa87a7e1b47fa8 /layers/param_checker.cpp | |
| parent | 00b147dcb07afb71707cf112abb4d8e1119c2346 (diff) | |
| download | usermoji-56dc45b851d14f17dce9f9a3894ceac064908fb7.tar.xz | |
param_checker: Use DEBUG_REPORT extension helpers
Diffstat (limited to 'layers/param_checker.cpp')
| -rw-r--r-- | layers/param_checker.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/layers/param_checker.cpp b/layers/param_checker.cpp index fa8f316c..dc53099a 100644 --- a/layers/param_checker.cpp +++ b/layers/param_checker.cpp @@ -193,7 +193,6 @@ void PostCreateInstance(VkResult result, const VkInstanceCreateInfo *pCreateInfo VK_LAYER_EXPORT VkResult VKAPI vkCreateInstance(const VkInstanceCreateInfo* pCreateInfo, VkInstance* pInstance) { - /* TODO: shouldn't we have initInstanceDispatch here? */ loader_platform_thread_once(&initOnce, initParamChecker); initInstanceTable((const VkBaseLayerObject *) (*pInstance)); @@ -1931,6 +1930,15 @@ VK_LAYER_EXPORT VkResult VKAPI vkDbgCreateMsgCallback( return layer_create_msg_callback(instance, pTable, msgFlags, pfnMsgCallback, pUserData, pMsgCallback); } +VK_LAYER_EXPORT VkResult VKAPI vkDbgDestroyMsgCallback( + VkInstance instance, + VkDbgMsgCallback msgCallback) +{ + VkLayerInstanceDispatchTable *pDisp = *(VkLayerInstanceDispatchTable **) instance; + VkLayerInstanceDispatchTable *pTable = tableInstanceMap[pDisp]; + return layer_destroy_msg_callback(instance, pTable, msgCallback); +} + VK_LAYER_EXPORT void VKAPI vkCmdDbgMarkerBegin(VkCmdBuffer cmdBuffer, const char* pMarker) { VkLayerDebugMarkerDispatchTable *pDisp = *(VkLayerDebugMarkerDispatchTable **) cmdBuffer; @@ -2282,6 +2290,7 @@ VK_LAYER_EXPORT void* VKAPI vkGetDeviceProcAddr(VkDevice device, const char* fun VK_LAYER_EXPORT void* VKAPI vkGetInstanceProcAddr(VkInstance instance, const char* funcName) { + void *fptr; void* addr; if (instance == NULL) { return NULL; @@ -2299,7 +2308,12 @@ VK_LAYER_EXPORT void* VKAPI vkGetInstanceProcAddr(VkInstance instance, const cha if (addr) { return addr; } - else { + + fptr = msg_callback_get_proc_addr(funcName); + if (fptr) + return fptr; + + { VkLayerInstanceDispatchTable **ppDisp = (VkLayerInstanceDispatchTable **) instance; VkLayerInstanceDispatchTable* pTable = tableInstanceMap[*ppDisp]; if (pTable->GetInstanceProcAddr == NULL) |
