@@ -57,7 +57,7 @@ Image :: struct {
which: Which_File_Type,
}
-Image_Metadata :: union {
+Image_Metadata :: union #shared_nil {
^Netpbm_Info,
^PNG_Info,
^QOI_Info,
@@ -52,7 +52,9 @@ destroy :: proc(img: ^Image, allocator := context.allocator) -> bool {
destroyer := _internal_destroyers[img.which]
if destroyer != nil {
destroyer(img)
+ } else {
+ assert(img.metadata == nil)
+ free(img)
- free(img)
return true