From 7436180e78d9814e3fd97cae878084225e30d226 Mon Sep 17 00:00:00 2001 From: Billy Laws Date: Tue, 14 Jan 2025 16:27:26 +0000 Subject: [PATCH] vrclient: Allocate runtime sized array dynamically. --- vrclient_x64/unix_vrcompositor_manual.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/vrclient_x64/unix_vrcompositor_manual.cpp b/vrclient_x64/unix_vrcompositor_manual.cpp index bb35c672..58bbf1f0 100644 --- a/vrclient_x64/unix_vrcompositor_manual.cpp +++ b/vrclient_x64/unix_vrcompositor_manual.cpp @@ -226,12 +226,15 @@ static NTSTATUS IVRCompositor_GetVulkanDeviceExtensionsRequired( Iface *iface, P template< typename Iface, typename Params > static NTSTATUS IVRCompositor_SetSkyboxOverride( Iface *iface, Params *params, bool wow64 ) { - u_VRVulkanTextureArrayData_t vkdata[params->unTextureCount]; - u_Texture_t textures[params->unTextureCount]; + u_VRVulkanTextureArrayData_t *vkdata = new u_VRVulkanTextureArrayData_t[params->unTextureCount]; + u_Texture_t *textures = new u_Texture_t[params->unTextureCount]; uint32_t i; for (i = 0; i < params->unTextureCount; i++) unwrap_texture( textures + i, params->pTextures + i, 0, &vkdata[i] ); params->_ret = (uint32_t)iface->SetSkyboxOverride( textures, params->unTextureCount ); + + delete[] textures; + delete[] vkdata; return 0; }