diff --git a/core/path/filepath/path.odin b/core/path/filepath/path.odin index 9f1719f3b..eed257f97 100644 --- a/core/path/filepath/path.odin +++ b/core/path/filepath/path.odin @@ -169,7 +169,7 @@ clean :: proc(path: string, allocator := context.allocator) -> string { s := lazy_buffer_string(out); cleaned, new_allocation := from_slash(s); if new_allocation { - delete(s); + lazy_buffer_destroy(s); } return cleaned; } @@ -395,3 +395,9 @@ lazy_buffer_string :: proc(lb: ^Lazy_Buffer) -> string { copy(z[len(x):], y); return string(z); } +@(private) +lazy_buffer_destroy :: proc(lb: ^Lazy_Buffer) { + delete(lb.b); + delete(lb); + lb^ = {}; +}