]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
vulkan : initialize vk_buffer_struct members to VK_NULL_HANDLE (ggml/893)
authorTony Wasserka <redacted>
Sat, 20 Jul 2024 18:49:44 +0000 (20:49 +0200)
committerGeorgi Gerganov <redacted>
Sat, 27 Jul 2024 14:43:44 +0000 (17:43 +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>
ggml/src/ggml-vulkan.cpp

index 74991f6d1e91d8c69c02bada4a75d045c16c1e6c..fa68360b96e4aaec4f6e2dae7d712a875705da4f 100644 (file)
@@ -236,8 +236,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;