Module: vkd3d Branch: master Commit: e9fd9a79a1c3e010a4d28cfba10b06fa4e48d0f2 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=e9fd9a79a1c3e010a4d28cfb...
Author: Zebediah Figura zfigura@codeweavers.com Date: Sun Mar 6 20:04:34 2022 -0600
vkd3d-utils: Avoid leaking "messages" when vkd3d_blob_create() fails.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
libs/vkd3d-utils/vkd3d_utils_main.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/libs/vkd3d-utils/vkd3d_utils_main.c b/libs/vkd3d-utils/vkd3d_utils_main.c index 5534453b..9607eddd 100644 --- a/libs/vkd3d-utils/vkd3d_utils_main.c +++ b/libs/vkd3d-utils/vkd3d_utils_main.c @@ -269,6 +269,7 @@ HRESULT WINAPI D3DCompile2(const void *data, SIZE_T data_size, const char *filen { if (FAILED(hr = vkd3d_blob_create(messages, strlen(messages), messages_blob))) { + vkd3d_shader_free_messages(messages); vkd3d_shader_free_shader_code(&byte_code); return hr; } @@ -356,6 +357,7 @@ HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename { if (FAILED(hr = vkd3d_blob_create(messages, strlen(messages), messages_blob))) { + vkd3d_shader_free_messages(messages); vkd3d_shader_free_shader_code(&preprocessed_code); return hr; }