aboutsummaryrefslogtreecommitdiff
path: root/loader/loader.c
diff options
context:
space:
mode:
authorJon Ashburn <jon@lunarg.com>2016-01-20 08:08:25 -0700
committerJon Ashburn <jon@lunarg.com>2016-01-20 18:05:39 -0700
commit2679f18983e093f1852f592c68ecf93283adf366 (patch)
treee26be213a004f10d0d72bb375b479523bef85774 /loader/loader.c
parent26227f4921fa3bbad08ed65750a40efe1575d5ea (diff)
downloadusermoji-2679f18983e093f1852f592c68ecf93283adf366.tar.xz
vktrace: Get partially working again with the new loader/layer interface
Diffstat (limited to 'loader/loader.c')
-rw-r--r--loader/loader.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/loader/loader.c b/loader/loader.c
index 2f253f00..0ffc5102 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -2847,7 +2847,8 @@ VkResult loader_enable_instance_layers(
*/
VkResult loader_create_instance_chain(const VkInstanceCreateInfo *pCreateInfo,
const VkAllocationCallbacks* pAllocator,
- struct loader_instance *inst)
+ struct loader_instance *inst,
+ VkInstance created_instance)
{
uint32_t activated_layers = 0;
VkLayerInstanceCreateInfo chain_info;
@@ -2909,7 +2910,7 @@ VkResult loader_create_instance_chain(const VkInstanceCreateInfo *pCreateInfo,
}
}
- PFN_vkCreateInstance fpCreateInstance = (PFN_vkCreateInstance) nextGIPA(VK_NULL_HANDLE, "vkCreateInstance");
+ PFN_vkCreateInstance fpCreateInstance = (PFN_vkCreateInstance) nextGIPA(created_instance, "vkCreateInstance");
if (fpCreateInstance) {
VkLayerInstanceCreateInfo instance_create_info;
@@ -2922,7 +2923,7 @@ VkResult loader_create_instance_chain(const VkInstanceCreateInfo *pCreateInfo,
instance_create_info.pNext = loader_create_info.pNext;
loader_create_info.pNext = &instance_create_info;
- res = fpCreateInstance(&loader_create_info, pAllocator, &inst->instance);
+ res = fpCreateInstance(&loader_create_info, pAllocator, &created_instance);
} else {
// Couldn't find CreateInstance function!
res = VK_ERROR_INITIALIZATION_FAILED;
@@ -2931,7 +2932,7 @@ VkResult loader_create_instance_chain(const VkInstanceCreateInfo *pCreateInfo,
if (res != VK_SUCCESS) {
// TODO: Need to clean up here
} else {
- loader_init_instance_core_dispatch_table(inst->disp, nextGIPA, inst->instance);
+ loader_init_instance_core_dispatch_table(inst->disp, nextGIPA, created_instance);
}
return res;
@@ -3134,7 +3135,7 @@ VkResult loader_create_device_chain(
}
}
- PFN_vkCreateDevice fpCreateDevice = (PFN_vkCreateDevice) nextGIPA(VK_NULL_HANDLE, "vkCreateDevice");
+ PFN_vkCreateDevice fpCreateDevice = (PFN_vkCreateDevice) nextGIPA((VkInstance) inst, "vkCreateDevice");
if (fpCreateDevice) {
res = fpCreateDevice(physicalDevice, &loader_create_info, pAllocator, &dev->device);
} else {