loader: Add utility to return loader instance ptr
diff --git a/loader/debug_report.c b/loader/debug_report.c
index 3572161..24a478d 100644
--- a/loader/debug_report.c
+++ b/loader/debug_report.c
@@ -67,7 +67,7 @@
if (!pNewDbgFuncNode)
return VK_ERROR_OUT_OF_HOST_MEMORY;
- struct loader_instance *inst = (struct loader_instance *) instance;
+ struct loader_instance *inst = loader_instance(instance);
VkResult result = inst->disp->DbgCreateMsgCallback(instance, msgFlags, pfnMsgCallback, pUserData, pMsgCallback);
if (result == VK_SUCCESS) {
pNewDbgFuncNode->msgCallback = *pMsgCallback;
@@ -84,10 +84,9 @@
static VkResult debug_report_DbgDestroyMsgCallback(
VkInstance instance,
- VkLayerDispatchTable nextTable,
VkDbgMsgCallback msg_callback)
{
- struct loader_instance *inst = (struct loader_instance *) instance;
+ struct loader_instance *inst = loader_instance(instance);
VkLayerDbgFunctionNode *pTrav = inst->DbgFunctionHead;
VkLayerDbgFunctionNode *pPrev = pTrav;
diff --git a/loader/loader.c b/loader/loader.c
index 525d30f..dd38aa3 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -1379,7 +1379,7 @@
VkResult loader_DestroyInstance(
VkInstance instance)
{
- struct loader_instance *ptr_instance = (struct loader_instance *) instance;
+ struct loader_instance *ptr_instance = loader_instance(instance);
struct loader_icd *icds = ptr_instance->icds;
VkResult res;
diff --git a/loader/loader.h b/loader/loader.h
index 6c1ec62..526f92e 100644
--- a/loader/loader.h
+++ b/loader/loader.h
@@ -211,6 +211,10 @@
VkLayerDbgFunctionNode *DbgFunctionHead;
};
+static inline struct loader_instance *loader_instance(VkInstance instance) {
+ return (struct loader_instance *) instance;
+}
+
struct loader_lib_info {
const char *lib_name;
uint32_t ref_count;