Vulkan-Loader
Vulkan-Loader copied to clipboard
Loader still adds a layer that fails negotation
I think there's a bug in the Vulkan loader. I've modified GFXReconstruct so that it fails during the vkNegotiateLoaderLayerInterface call with an error (VK_ERROR_INITIALIZATION_FAILED), and the loader is still adding the layer to the instance stack.
I think it should just continue after it fails loader_get_layer_interface_version in loader.c.
The problem is that even if the layer fails the negotiation, the loader still tries to load the GetInstanceProcAddr function from the OS, which is incorrect.
To reproduce, simply modify any layer to return VK_ERROR_INITIALIZATION_FAILED during the negotiation process (or modify the loader to pretend it gets that failure from any layer present).