]> wimlib.net Git - wimlib/blobdiff - src/lookup_table.c
Consolidate `struct lookup_table_entry'
[wimlib] / src / lookup_table.c
index 36d2d13f69430518dcdafbf59b2649a75af25152..f0da2b423c59c521612aa7d4f23033bc85b693e4 100644 (file)
@@ -156,7 +156,6 @@ void free_lookup_table_entry(struct lookup_table_entry *lte)
                default:
                        break;
                }
-               FREE(lte->extracted_file);
                FREE(lte);
        }
 }
@@ -423,13 +422,21 @@ int lte_zero_out_refcnt(struct lookup_table_entry *lte, void *ignore)
        return 0;
 }
 
-int lte_free_extracted_file(struct lookup_table_entry *lte, void *ignone)
+int lte_zero_extracted_file(struct lookup_table_entry *lte, void *ignore)
 {
-       FREE(lte->extracted_file);
        lte->extracted_file = NULL;
        return 0;
 }
 
+int lte_free_extracted_file(struct lookup_table_entry *lte, void *ignore)
+{
+       if (lte->extracted_file != NULL) {
+               FREE(lte->extracted_file);
+               lte->extracted_file = NULL;
+       }
+       return 0;
+}
+
 void print_lookup_table_entry(const struct lookup_table_entry *lte)
 {
        if (!lte) {