aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Ashburn <jon@lunarg.com>2016-01-27 10:56:10 -0700
committerJon Ashburn <jon@lunarg.com>2016-01-27 10:56:10 -0700
commit32b8694ccdb9e22b6aac236f2e28cebe12520174 (patch)
treec47c6accc0c2e03af3eb1e1961ea2e4ce8a5f77e
parent2bbebb604c1a09a4cbfb094b76898be50ad75cc0 (diff)
downloadusermoji-32b8694ccdb9e22b6aac236f2e28cebe12520174.tar.xz
loader: Fix createInstance to pass pAllocator down
Also fix bug where createDevice failure removes logical device from icd struct
-rw-r--r--loader/loader.c6
-rw-r--r--loader/trampoline.c2
2 files changed, 4 insertions, 4 deletions
diff --git a/loader/loader.c b/loader/loader.c
index a51312ea..9040f3f2 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -193,7 +193,7 @@ void* loader_heap_realloc(
return NULL;
memcpy(new_ptr, pMemory, orig_size);
instance->alloc_callbacks.pfnFree(instance->alloc_callbacks.pUserData, pMemory);
- return new_ptr;
+ return new_ptr;
}
return realloc(pMemory, size);
}
@@ -3712,13 +3712,13 @@ VKAPI_ATTR VkResult VKAPI_CALL loader_CreateDevice(
/* activate any layers on device chain which terminates with device*/
res = loader_enable_device_layers(inst, icd, &dev->activated_layer_list, pCreateInfo, &inst->device_layer_list);
if (res != VK_SUCCESS) {
- loader_destroy_logical_device(inst, dev);
+ loader_remove_logical_device(inst, icd, dev);
return res;
}
res = loader_create_device_chain(physicalDevice, pCreateInfo, pAllocator, inst, icd, dev);
if (res != VK_SUCCESS) {
- loader_destroy_logical_device(inst, dev);
+ loader_remove_logical_device(inst, icd, dev);
return res;
}
diff --git a/loader/trampoline.c b/loader/trampoline.c
index 6468ce8f..9cca6aa9 100644
--- a/loader/trampoline.c
+++ b/loader/trampoline.c
@@ -181,7 +181,7 @@ LOADER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(
}
created_instance = (VkInstance) ptr_instance;
- res = loader_create_instance_chain(pCreateInfo, NULL, ptr_instance, created_instance);
+ res = loader_create_instance_chain(pCreateInfo, pAllocator, ptr_instance, created_instance);
if (res == VK_SUCCESS) {
wsi_create_instance(ptr_instance, pCreateInfo);