1
0
mirror of https://github.com/git/git.git synced 2024-10-20 21:38:38 +02:00
git/builtin
Junio C Hamano f63c79dbc8 pack-object: tolerate broken packs that have duplicated objects
When --reuse-delta is in effect (which is the default), and an existing
pack in the repository has the same object registered twice (e.g. one copy
in a non-delta format and the other copy in a delta against some other
object), an attempt to repack the repository can result in a cyclic delta
dependency, causing write_one() function to infinitely recurse into
itself.

Detect such a case and break the loopy dependency by writing out an object
that is involved in such a loop in the non-delta format.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-11-16 22:06:08 -08:00
..
add.c
annotate.c
apply.c zlib: zlib can only process 4GB at a time 2011-06-10 11:52:15 -07:00
archive.c
bisect--helper.c
blame.c
branch.c Merge branch 'maint-1.7.5' into maint 2011-06-29 16:41:55 -07:00
bundle.c
cat-file.c plug a few coverity-spotted leaks 2011-06-20 14:27:36 -07:00
check-attr.c
check-ref-format.c check-ref-format --print: Normalize refnames that start with slashes 2011-08-25 13:39:38 -07:00
checkout-index.c checkout-index: remove obsolete comment 2011-08-17 10:39:47 -07:00
checkout.c Merge branch 'cb/maint-ls-files-error-report' into maint 2011-09-23 14:30:49 -07:00
clean.c
clone.c Merge branch 'jc/maint-clone-alternates' into maint 2011-09-23 14:27:33 -07:00
commit-tree.c
commit.c ls-files: fix pathspec display on error 2011-08-11 13:04:16 -07:00
config.c
count-objects.c
describe.c describe: Refresh the index when run with --dirty 2011-09-23 14:28:17 -07:00
diff-files.c
diff-index.c
diff-tree.c
diff.c plug a few coverity-spotted leaks 2011-06-20 14:27:36 -07:00
fast-export.c Merge branch 'jk/fast-export-quote-path' into maint 2011-08-16 12:41:12 -07:00
fetch-pack.c fetch-pack: check for valid commit from server 2011-08-18 12:25:54 -07:00
fetch.c fetch: skip on-demand checking when no submodules are configured 2011-09-09 13:59:20 -07:00
fmt-merge-msg.c
for-each-ref.c
fsck.c
gc.c builtin/gc.c: add missing newline in message 2011-06-19 14:46:39 -07:00
grep.c
hash-object.c
help.c
index-pack.c Merge branch 'jc/zlib-wrap' into maint 2011-08-16 11:23:26 -07:00
init-db.c read_gitfile_gently(): rename misnamed function to read_gitfile() 2011-08-22 14:04:56 -07:00
log.c
ls-files.c ls-files: fix pathspec display on error 2011-08-11 13:04:16 -07:00
ls-remote.c
ls-tree.c Ensure git ls-tree exits with a non-zero exit code if read_tree_recursive fails. 2011-07-25 10:50:11 -07:00
mailinfo.c
mailsplit.c
merge-base.c
merge-file.c
merge-index.c
merge-ours.c
merge-recursive.c
merge-tree.c
merge.c
mktag.c
mktree.c
mv.c
name-rev.c
notes.c
pack-objects.c pack-object: tolerate broken packs that have duplicated objects 2011-11-16 22:06:08 -08:00
pack-redundant.c
pack-refs.c
patch-id.c
prune-packed.c
prune.c
push.c
read-tree.c
receive-pack.c Revert "Merge branch 'cb/maint-quiet-push' into maint" 2011-09-06 11:10:41 -07:00
reflog.c reflog: actually default to subcommand 'show' 2011-08-01 10:52:34 -07:00
remote-ext.c
remote-fd.c
remote.c whitespace: have SP on both sides of an assignment "=" 2011-08-25 14:47:07 -07:00
replace.c
rerere.c
reset.c Merge branch 'jk/reset-reflog-message-fix' into maint 2011-09-11 22:33:20 -07:00
rev-list.c
rev-parse.c
revert.c
rm.c
send-pack.c Revert "Merge branch 'cb/maint-quiet-push' into maint" 2011-09-06 11:10:41 -07:00
shortlog.c
show-branch.c
show-ref.c
stripspace.c
symbolic-ref.c
tag.c Merge branch 'jk/tag-contains-ab' (early part) into maint 2011-09-11 21:54:32 -07:00
tar-tree.c
unpack-file.c
unpack-objects.c zlib: zlib can only process 4GB at a time 2011-06-10 11:52:15 -07:00
update-index.c plug a few coverity-spotted leaks 2011-06-20 14:27:36 -07:00
update-ref.c update-ref: whitespace fix 2011-08-25 14:42:11 -07:00
update-server-info.c
upload-archive.c
var.c
verify-pack.c
verify-tag.c
write-tree.c