Fix Get*ProcAddr functions' exports

pull/20/head
jackun 4 years ago
parent 58384b0602
commit 3f036dd3a0
No known key found for this signature in database
GPG Key ID: 119DB3F1D05A9ED3

@ -7,6 +7,10 @@
"library_path": "libMangoHud.so", "library_path": "libMangoHud.so",
"implementation_version": "1", "implementation_version": "1",
"description": "Vulkan Hud Overlay", "description": "Vulkan Hud Overlay",
"functions": {
"vkGetInstanceProcAddr": "overlay_vkGetInstanceProcAddr",
"vkGetDeviceProcAddr": "overlay_vkGetDeviceProcAddr"
},
"enable_environment": { "enable_environment": {
"MANGOHUD": "1" "MANGOHUD": "1"
}, },

@ -2512,7 +2512,6 @@ static const struct {
const char *name; const char *name;
void *ptr; void *ptr;
} name_to_funcptr_map[] = { } name_to_funcptr_map[] = {
{ "vkGetDeviceProcAddr", (void *) vkGetDeviceProcAddr },
#define ADD_HOOK(fn) { "vk" # fn, (void *) overlay_ ## fn } #define ADD_HOOK(fn) { "vk" # fn, (void *) overlay_ ## fn }
#define ADD_ALIAS_HOOK(alias, fn) { "vk" # alias, (void *) overlay_ ## fn } #define ADD_ALIAS_HOOK(alias, fn) { "vk" # alias, (void *) overlay_ ## fn }
ADD_HOOK(AllocateCommandBuffers), ADD_HOOK(AllocateCommandBuffers),
@ -2546,7 +2545,9 @@ static void *find_ptr(const char *name)
return NULL; return NULL;
} }
VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(VkDevice dev, extern "C" {
VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL overlay_vkGetDeviceProcAddr(VkDevice dev,
const char *funcName) const char *funcName)
{ {
void *ptr = find_ptr(funcName); void *ptr = find_ptr(funcName);
@ -2559,7 +2560,7 @@ VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(VkD
return device_data->vtable.GetDeviceProcAddr(dev, funcName); return device_data->vtable.GetDeviceProcAddr(dev, funcName);
} }
VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(VkInstance instance, VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL overlay_vkGetInstanceProcAddr(VkInstance instance,
const char *funcName) const char *funcName)
{ {
void *ptr = find_ptr(funcName); void *ptr = find_ptr(funcName);
@ -2571,3 +2572,5 @@ VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(V
if (instance_data->vtable.GetInstanceProcAddr == NULL) return NULL; if (instance_data->vtable.GetInstanceProcAddr == NULL) return NULL;
return instance_data->vtable.GetInstanceProcAddr(instance, funcName); return instance_data->vtable.GetInstanceProcAddr(instance, funcName);
} }
}

Loading…
Cancel
Save