commit 1accf02b5869ef6a1d4ec4fc3f7a1bdb6e4ff93b from: Stefan Sperling date: Sun Jan 05 19:32:21 2020 UTC detect duplicate object IDs during ambiguity check; packed regress passes now commit - b32c452563c515bd8597b168d85510fa50d64f65 commit + 1accf02b5869ef6a1d4ec4fc3f7a1bdb6e4ff93b blob - e7022555ae9106a6b519d797cb9e28bbdfe897b4 blob + c79dababb892c0f37a97b01e493ccdc7a996f5bb --- lib/repository.c +++ lib/repository.c @@ -1156,6 +1156,8 @@ match_packed_object(struct got_object_id **unique_id, goto done; } } else { + if (got_object_id_cmp(*unique_id, qid->id) == 0) + continue; /* packed multiple times */ err = got_error(GOT_ERR_AMBIGUOUS_ID); goto done; } @@ -1241,6 +1243,8 @@ match_loose_object(struct got_object_id **unique_id, c goto done; } } else { + if (got_object_id_cmp(*unique_id, &id) == 0) + continue; /* both packed and loose */ err = got_error(GOT_ERR_AMBIGUOUS_ID); free(id_str); goto done;