mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-08-28 09:26:52 +00:00
Fix triple-promotion handling of EXT line stipple. Closes #3841
This commit is contained in:
@@ -111,6 +111,17 @@ void InitInstanceExtensionTables(VkInstance instance, InstanceDeviceInfo *info)
|
||||
table->CONCAT(func, KHR) = table->CONCAT(func, EXT); \
|
||||
}
|
||||
|
||||
#undef HookInitPromotedExtensionEXTtoKHR
|
||||
#define HookInitPromotedExtensionEXTtoKHR(func) \
|
||||
{ \
|
||||
if(table->CONCAT(func, EXT) == NULL) \
|
||||
table->CONCAT(func, EXT) = table->CONCAT(func, KHR); \
|
||||
if(table->CONCAT(func, KHR) == NULL) \
|
||||
table->CONCAT(func, KHR) = table->CONCAT(func, EXT); \
|
||||
if(table->func == NULL) \
|
||||
table->func = table->CONCAT(func, EXT); \
|
||||
}
|
||||
|
||||
DeclExts();
|
||||
|
||||
CheckInstanceExts();
|
||||
@@ -161,6 +172,17 @@ void InitDeviceExtensionTables(VkDevice device, InstanceDeviceInfo *info)
|
||||
table->CONCAT(func, KHR) = table->CONCAT(func, EXT); \
|
||||
}
|
||||
|
||||
#undef HookInitPromotedExtensionEXTtoKHR
|
||||
#define HookInitPromotedExtensionEXTtoKHR(func) \
|
||||
{ \
|
||||
if(table->CONCAT(func, EXT) == NULL) \
|
||||
table->CONCAT(func, EXT) = table->CONCAT(func, KHR); \
|
||||
if(table->CONCAT(func, KHR) == NULL) \
|
||||
table->CONCAT(func, KHR) = table->CONCAT(func, EXT); \
|
||||
if(table->func == NULL) \
|
||||
table->func = table->CONCAT(func, EXT); \
|
||||
}
|
||||
|
||||
DeclExts();
|
||||
|
||||
CheckInstanceExts();
|
||||
|
||||
@@ -1050,7 +1050,7 @@
|
||||
HookInitExtension(EXT_mesh_shader, CmdDrawMeshTasksIndirectCountEXT); \
|
||||
HookInitExtension(KHR_calibrated_timestamps, GetCalibratedTimestampsKHR); \
|
||||
HookInitPromotedExtension(KHR_line_rasterization, CmdSetLineStipple, KHR); \
|
||||
HookInitExtensionEXTtoKHR(CmdSetLineStipple); \
|
||||
HookInitPromotedExtensionEXTtoKHR(CmdSetLineStipple); \
|
||||
HookInitExtension(KHR_deferred_host_operations, CreateDeferredOperationKHR); \
|
||||
HookInitExtension(KHR_deferred_host_operations, DeferredOperationJoinKHR); \
|
||||
HookInitExtension(KHR_deferred_host_operations, DestroyDeferredOperationKHR); \
|
||||
|
||||
@@ -417,6 +417,9 @@ VK_LAYER_RENDERDOC_CaptureEnumerateInstanceExtensionProperties(
|
||||
#undef HookInitExtensionEXTtoKHR
|
||||
#define HookInitExtensionEXTtoKHR(func) (void)0;
|
||||
|
||||
#undef HookInitPromotedExtensionEXTtoKHR
|
||||
#define HookInitPromotedExtensionEXTtoKHR(func) (void)0;
|
||||
|
||||
// proc addr routines
|
||||
|
||||
VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL
|
||||
@@ -529,6 +532,9 @@ VK_LAYER_RENDERDOC_CaptureGetInstanceProcAddr(VkInstance instance, const char *p
|
||||
#undef HookInitExtensionEXTtoKHR
|
||||
#define HookInitExtensionEXTtoKHR(func) (void)0;
|
||||
|
||||
#undef HookInitPromotedExtensionEXTtoKHR
|
||||
#define HookInitPromotedExtensionEXTtoKHR(func) (void)0;
|
||||
|
||||
HookInitVulkanDevice();
|
||||
|
||||
HookInitVulkanDeviceExts();
|
||||
@@ -610,6 +616,9 @@ VK_LAYER_RENDERDOC_Capture_layerGetPhysicalDeviceProcAddr(VkInstance instance, c
|
||||
#undef HookInitExtensionEXTtoKHR
|
||||
#define HookInitExtensionEXTtoKHR(func) (void)0;
|
||||
|
||||
#undef HookInitPromotedExtensionEXTtoKHR
|
||||
#define HookInitPromotedExtensionEXTtoKHR(func) (void)0;
|
||||
|
||||
HookInitVulkanInstanceExts();
|
||||
HookInitVulkanDeviceExts();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user