diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-05-07 22:01:44 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-05-07 22:01:44 +0200 |
| commit | 057de8f9bee4a89fe8b5823a0310322076108de7 (patch) | |
| tree | 1965cb4def4d2065e1100110cc54995533658ccd /src | |
| parent | 404bfdc78271bf15db14e6b5539d22026f2bc964 (diff) | |
| download | box64-057de8f9bee4a89fe8b5823a0310322076108de7.tar.gz box64-057de8f9bee4a89fe8b5823a0310322076108de7.zip | |
Added 1 extension to wrapped vulkan, and change a bit 1 of the procaddress (in sync with the others)
Diffstat (limited to 'src')
| -rwxr-xr-x | src/wrapped/wrappedvulkan.c | 7 | ||||
| -rwxr-xr-x | src/wrapped/wrappedvulkan_private.h | 6 |
2 files changed, 8 insertions, 5 deletions
diff --git a/src/wrapped/wrappedvulkan.c b/src/wrapped/wrappedvulkan.c index b138ad9b..a8f694bb 100755 --- a/src/wrapped/wrappedvulkan.c +++ b/src/wrapped/wrappedvulkan.c @@ -84,8 +84,8 @@ EXPORT void* my_vkGetDeviceProcAddr(x64emu_t* emu, void* device, void* name) fillVulkanProcWrapper(emu->context); k = kh_get(symbolmap, emu->context->vkmymap, rname); int is_my = (k==kh_end(emu->context->vkmymap))?0:1; - void* symbol; - if(is_my) { + void* symbol = my->vkGetDeviceProcAddr(device, name); + if(symbol && is_my) { // only wrap if symbol exist // try again, by using custom "my_" now... char tmp[200]; strcpy(tmp, "my_"); @@ -95,8 +95,7 @@ EXPORT void* my_vkGetDeviceProcAddr(x64emu_t* emu, void* device, void* name) #define GO(A, W) if(!strcmp(rname, #A)) my->A = (W)my->vkGetDeviceProcAddr(device, name); SUPER() #undef GO - } else - symbol = my->vkGetDeviceProcAddr(device, name); + } if(!symbol) { printf_dlsym(LOG_DEBUG, "%p\n", NULL); return NULL; // easy diff --git a/src/wrapped/wrappedvulkan_private.h b/src/wrapped/wrappedvulkan_private.h index 873f8572..4e8c295e 100755 --- a/src/wrapped/wrappedvulkan_private.h +++ b/src/wrapped/wrappedvulkan_private.h @@ -804,4 +804,8 @@ GO(vkCmdSetSampleMaskEXT, vFpip) GO(vkCmdSetShadingRateImageEnableNV, vFpi) GO(vkCmdSetTessellationDomainOriginEXT, vFpi) GO(vkCmdSetViewportSwizzleNV, vFpuup) -GO(vkCmdSetViewportWScalingEnableNV, vFpi) \ No newline at end of file +GO(vkCmdSetViewportWScalingEnableNV, vFpi) + +// VK_KHR_external_memory_win32 +GO(vkGetMemoryWin32HandleKHR, iFppp) +GO(vkGetMemoryWin32HandlePropertiesKHR, iFpipp) |