]> git.djapps.eu Git - pkg/ggml/sources/ggml/commitdiff
vulkan : initialize vk_buffer_struct members to VK_NULL_HANDLE (#893)
authorTony Wasserka <redacted>
Sat, 20 Jul 2024 18:49:44 +0000 (20:49 +0200)
committerGitHub <redacted>
Sat, 20 Jul 2024 18:49:44 +0000 (21:49 +0300)
This prevents invalid frees when destroying a partially initialized
vk_buffer_struct. For example, this could happen in ggml_vk_create_buffer
when running out of device memory.

Co-authored-by: Tony Wasserka <redacted>
src/ggml-vulkan.cpp

index 101781ede4b4fd303c95acd72ed1ebdb9858ec73..4da5e139adbb47c290101d2cf4e450d3338363ec 100644 (file)
@@ -238,8 +238,8 @@ struct vk_device_struct {
 };
 
 struct vk_buffer_struct {
-    vk::Buffer buffer;
-    vk::DeviceMemory device_memory;
+    vk::Buffer buffer = VK_NULL_HANDLE;
+    vk::DeviceMemory device_memory = VK_NULL_HANDLE;
     vk::MemoryPropertyFlags memory_property_flags;
     void * ptr;
     size_t size = 0;