Commit Diff


commit - 8dfb8335f908abe468c096ff44dc3b400078dd24
commit + 284a194b014a698450b40ee7eaef2e1d5334c607
blob - 954b33f5b857db2f38e74101331f458b1fd84c74
blob + 15f0b91bc626701388d1ce14abb9f0437fe5676e
--- lib/pack_create.c
+++ lib/pack_create.c
@@ -107,6 +107,8 @@ clear_meta(struct got_pack_meta *meta)
 	free(meta->base_obj_id);
 	meta->base_obj_id = NULL;
 	meta->reused_delta_offset = 0;
+	got_deltify_free(meta->dtab);
+	meta->dtab = NULL;
 }
 
 static void
@@ -114,10 +116,8 @@ free_nmeta(struct got_pack_meta **meta, int nmeta)
 {
 	int i;
 
-	for (i = 0; i < nmeta; i++) {
+	for (i = 0; i < nmeta; i++)
 		clear_meta(meta[i]);
-		got_deltify_free(meta[i]->dtab);
-	}
 
 	free(meta);
 }