Commit Diff


commit - e38d4cdede4142c7bae75cc884f5ce57dad297af
commit + cdeb891a2479c24d74198d39285be4c75c366c3f
blob - 3cd0e26ffd1114f0b7516be8be5a1c9d5106102b
blob + d758916b0b6fd2d8e89ac53b25160a0e4421e93b
--- lib/pack_create.c
+++ lib/pack_create.c
@@ -862,7 +862,7 @@ add_object(int want_meta, struct got_object_idset *ids
 		err = search_packidx(&is_packed, id, repo);
 		if (err)
 			return err;
-		if (is_packed)
+		if (is_packed && want_meta)
 			return NULL;
 	}
 
@@ -1026,7 +1026,7 @@ load_commit(int want_meta, struct got_object_idset *id
 		err = search_packidx(&is_packed, id, repo);
 		if (err)
 			return err;
-		if (is_packed)
+		if (is_packed && want_meta)
 			return NULL;
 	}
 
@@ -1073,7 +1073,7 @@ load_tag(int want_meta, struct got_object_idset *idset
 		err = search_packidx(&is_packed, id, repo);
 		if (err)
 			return err;
-		if (is_packed)
+		if (is_packed && want_meta)
 			return NULL;
 	}