diff options
| author | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-04-20 11:04:54 -0600 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-04-22 10:48:24 -0600 |
| commit | 0600115afb68012bf20a3e75fdb7302776d59666 (patch) | |
| tree | 689025f095d4eec2381acb85df81b264797290ad /loader | |
| parent | b11da8f8b52bc770a3203f7b017aba94a784d845 (diff) | |
| download | usermoji-0600115afb68012bf20a3e75fdb7302776d59666.tar.xz | |
vkEnumerateLayers: Update to match upstream
The upstream vulkan.h header removed maxLayerCount parameter
from vkEnumerateLayers. This patch implements that change
for the sample driver and layers.
Diffstat (limited to 'loader')
| -rw-r--r-- | loader/loader.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/loader/loader.c b/loader/loader.c index de296fa9..3325a109 100644 --- a/loader/loader.c +++ b/loader/loader.c @@ -1368,8 +1368,9 @@ LOADER_EXPORT VkResult VKAPI vkGetGlobalExtensionInfo( return VK_SUCCESS; } -LOADER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, size_t* pOutLayerCount, char* const* pOutLayers, void* pReserved) +LOADER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxStringSize, size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { + size_t maxLayerCount; uint32_t gpu_index; size_t count = 0; char *lib_name; @@ -1379,9 +1380,11 @@ LOADER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxL char layer_buf[16][256]; char * layers[16]; - if (pOutLayerCount == NULL || pOutLayers == NULL) + if (pLayerCount == NULL || pOutLayers == NULL) return VK_ERROR_INVALID_POINTER; + maxLayerCount = *pLayerCount; + if (!icd) return VK_ERROR_UNAVAILABLE; @@ -1417,11 +1420,11 @@ LOADER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxL count++; free(cpyStr); } else { - size_t cnt; + size_t cnt = 16; /* only allow 16 layers, for now */ uint32_t n; VkResult res; n = (uint32_t) ((maxStringSize < 256) ? maxStringSize : 256); - res = fpEnumerateLayers((VkPhysicalDevice) NULL, 16, n, &cnt, layers, (char *) icd->gpus + gpu_index); + res = fpEnumerateLayers((VkPhysicalDevice) NULL, n, &cnt, layers, (char *) icd->gpus + gpu_index); loader_platform_close_library(handle); if (res != VK_SUCCESS) continue; @@ -1436,7 +1439,7 @@ LOADER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxL } } - *pOutLayerCount = count; + *pLayerCount = count; return VK_SUCCESS; } |
