fixing bug in kvfCreateInstance with Validation Layers on

This commit is contained in:
2024-09-11 07:07:02 +02:00
parent 156345ca11
commit 1a734cd185

9
kvf.h
View File

@@ -1072,16 +1072,15 @@ VkInstance kvfCreateInstance(const char** extensions_enabled, uint32_t extension
#ifdef KVF_ENABLE_VALIDATION_LAYERS
kvfAddLayer("VK_LAYER_KHRONOS_validation");
const char** new_extension_set = NULL;
VkDebugUtilsMessengerCreateInfoEXT debug_create_info = {};
if(__kvfCheckValidationLayerSupport())
{
VkDebugUtilsMessengerCreateInfoEXT debug_create_info = {};
__kvfPopulateDebugMessengerCreateInfo(&debug_create_info);
new_extension_set = (const char**)KVF_MALLOC(sizeof(char*) * (extensions_count + 2));
new_extension_set = (const char**)KVF_MALLOC(sizeof(char*) * (extensions_count + 1));
memcpy(new_extension_set, extensions_enabled, sizeof(char*) * extensions_count);
new_extension_set[extensions_count + 0] = VK_EXT_DEBUG_REPORT_EXTENSION_NAME;
new_extension_set[extensions_count + 1] = VK_EXT_DEBUG_UTILS_EXTENSION_NAME;
new_extension_set[extensions_count] = VK_EXT_DEBUG_UTILS_EXTENSION_NAME;
create_info.enabledExtensionCount = extensions_count + 2;
create_info.enabledExtensionCount = extensions_count + 1;
create_info.ppEnabledExtensionNames = new_extension_set;
create_info.enabledLayerCount = __kvf_extra_layers_count;
create_info.ppEnabledLayerNames = (const char* const*)__kvf_extra_layers;