diff options
author | Carlos Martín Nieto <cmn@dwim.me> | 2015-03-13 19:41:40 +0100 |
---|---|---|
committer | Carlos Martín Nieto <cmn@dwim.me> | 2015-03-13 19:41:40 +0100 |
commit | 7c63a33ffe1198b77b481974cd0e74e9ace1745c (patch) | |
tree | a5eee6adeaf62b74273a7b996d302d96e6a57dc7 | |
parent | dccf59ad385489eef31a2521440bc07e7cc98a5b (diff) | |
download | libgit2-7c63a33ffe1198b77b481974cd0e74e9ace1745c.tar.gz |
indexer: bring back the error message on duplcate commits
It turns out that erroring out on duplicate commits is the right thing
to do, but git was not hitting the bug on the server-side.
Bring back a descriptive error message in case of duplicate entries and
error out.
-rw-r--r-- | src/indexer.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/indexer.c b/src/indexer.c index 68e903e05..4fb33b6f1 100644 --- a/src/indexer.c +++ b/src/indexer.c @@ -293,6 +293,13 @@ static int store_object(git_indexer *idx) goto on_error; } + if (error == 0) { + giterr_set(GITERR_INDEXER, "duplicate object %s found in pack", git_oid_tostr_s(&pentry->sha1)); + git__free(pentry); + goto on_error; + } + + kh_value(idx->pack->idx_cache, k) = pentry; git_oid_cpy(&entry->oid, &oid); |