Staging
v0.8.1
Revision 5d6b151fdd0a9e41ba68b444760616da1a008433 authored by Johannes Schindelin on 28 December 2006, 16:13:33 UTC, committed by Junio C Hamano on 28 December 2006, 21:59:39 UTC
The function xdl_refine_conflicts() tries to break down huge
conflicts by doing a diff on the conflicting regions. However,
this does not make sense when one side is empty.

Worse, when one side is not only empty, but after EOF, the code
accessed unmapped memory.

Noticed by Luben Tuikov, Shawn Pearce and Alexandre Julliard, the
latter providing a test case.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
1 parent 4a4d94b
History
File Mode Size
Documentation
arm
compat
contrib
gitweb
mozilla-sha1
perl
ppc
t
templates
xdiff
.gitignore -rw-r--r-- 2.1 KB
.mailmap -rw-r--r-- 1.4 KB
COPYING -rw-r--r-- 18.3 KB
GIT-VERSION-GEN -rwxr-xr-x 751 bytes
INSTALL -rw-r--r-- 4.1 KB
Makefile -rw-r--r-- 25.7 KB
README -rw-r--r-- 24.7 KB
alloc.c -rw-r--r-- 1.4 KB
archive-tar.c -rw-r--r-- 8.1 KB
archive-zip.c -rw-r--r-- 8.8 KB
archive.h -rw-r--r-- 1.1 KB
base85.c -rw-r--r-- 2.9 KB
blob.c -rw-r--r-- 1.2 KB
blob.h -rw-r--r-- 311 bytes
builtin-add.c -rw-r--r-- 4.4 KB
builtin-annotate.c -rw-r--r-- 444 bytes
builtin-apply.c -rw-r--r-- 65.9 KB
builtin-archive.c -rw-r--r-- 5.8 KB
builtin-blame.c -rw-r--r-- 46.7 KB
builtin-branch.c -rw-r--r-- 10.8 KB
builtin-cat-file.c -rw-r--r-- 3.2 KB
builtin-check-ref-format.c -rw-r--r-- 282 bytes
builtin-checkout-index.c -rw-r--r-- 7.6 KB
builtin-commit-tree.c -rw-r--r-- 3.7 KB
builtin-count-objects.c -rw-r--r-- 2.9 KB
builtin-diff-files.c -rw-r--r-- 1.3 KB
builtin-diff-index.c -rw-r--r-- 1.0 KB
builtin-diff-stages.c -rw-r--r-- 2.5 KB
builtin-diff-tree.c -rw-r--r-- 3.2 KB
builtin-diff.c -rw-r--r-- 8.6 KB
builtin-fmt-merge-msg.c -rw-r--r-- 7.7 KB
builtin-for-each-ref.c -rw-r--r-- 20.4 KB
builtin-grep.c -rw-r--r-- 16.3 KB
builtin-init-db.c -rw-r--r-- 8.6 KB
builtin-log.c -rw-r--r-- 15.7 KB
builtin-ls-files.c -rw-r--r-- 11.5 KB
builtin-ls-tree.c -rw-r--r-- 3.5 KB
builtin-mailinfo.c -rw-r--r-- 17.1 KB
builtin-mailsplit.c -rw-r--r-- 4.1 KB
builtin-merge-file.c -rw-r--r-- 1.5 KB
builtin-mv.c -rw-r--r-- 7.4 KB
builtin-name-rev.c -rw-r--r-- 5.4 KB
builtin-pack-objects.c -rw-r--r-- 41.3 KB
builtin-pack-refs.c -rw-r--r-- 2.7 KB
builtin-prune-packed.c -rw-r--r-- 1.5 KB
builtin-prune.c -rw-r--r-- 6.1 KB
builtin-push.c -rw-r--r-- 7.1 KB
builtin-read-tree.c -rw-r--r-- 6.5 KB
builtin-reflog.c -rw-r--r-- 5.6 KB
builtin-repo-config.c -rw-r--r-- 5.4 KB
builtin-rerere.c -rw-r--r-- 9.9 KB
builtin-rev-list.c -rw-r--r-- 6.4 KB
builtin-rev-parse.c -rw-r--r-- 7.7 KB
builtin-rm.c -rw-r--r-- 5.4 KB
builtin-runstatus.c -rw-r--r-- 812 bytes
builtin-shortlog.c -rw-r--r-- 7.9 KB
builtin-show-branch.c -rw-r--r-- 19.2 KB
builtin-show-ref.c -rw-r--r-- 5.7 KB
builtin-stripspace.c -rw-r--r-- 1012 bytes
builtin-symbolic-ref.c -rw-r--r-- 728 bytes
builtin-tar-tree.c -rw-r--r-- 2.1 KB
builtin-unpack-objects.c -rw-r--r-- 9.0 KB
builtin-update-index.c -rw-r--r-- 16.6 KB
builtin-update-ref.c -rw-r--r-- 1.5 KB
builtin-upload-archive.c -rw-r--r-- 4.1 KB
builtin-verify-pack.c -rw-r--r-- 1.6 KB
builtin-write-tree.c -rw-r--r-- 2.1 KB
builtin.h -rw-r--r-- 5.1 KB
cache-tree.c -rw-r--r-- 12.5 KB
cache-tree.h -rw-r--r-- 921 bytes
cache.h -rw-r--r-- 15.6 KB
check-builtins.sh -rwxr-xr-x 588 bytes
check-racy.c -rw-r--r-- 517 bytes
color.c -rw-r--r-- 3.2 KB
color.h -rw-r--r-- 376 bytes
combine-diff.c -rw-r--r-- 25.0 KB
commit.c -rw-r--r-- 23.7 KB
commit.h -rw-r--r-- 3.6 KB
config.c -rw-r--r-- 17.4 KB
config.mak.in -rw-r--r-- 906 bytes
configure.ac -rw-r--r-- 10.8 KB
connect.c -rw-r--r-- 17.2 KB
convert-objects.c -rw-r--r-- 7.3 KB
copy.c -rw-r--r-- 692 bytes
csum-file.c -rw-r--r-- 2.9 KB
csum-file.h -rw-r--r-- 566 bytes
ctype.c -rw-r--r-- 890 bytes
daemon.c -rw-r--r-- 25.8 KB
date.c -rw-r--r-- 17.0 KB
delta.h -rw-r--r-- 3.2 KB
describe.c -rw-r--r-- 3.7 KB
diff-delta.c -rw-r--r-- 13.8 KB
diff-lib.c -rw-r--r-- 8.7 KB
diff.c -rw-r--r-- 70.2 KB
diff.h -rw-r--r-- 6.7 KB
diffcore-break.c -rw-r--r-- 8.5 KB
diffcore-delta.c -rw-r--r-- 5.1 KB
diffcore-order.c -rw-r--r-- 2.2 KB
diffcore-pickaxe.c -rw-r--r-- 3.2 KB
diffcore-rename.c -rw-r--r-- 13.0 KB
diffcore.h -rw-r--r-- 3.7 KB
dir.c -rw-r--r-- 9.6 KB
dir.h -rw-r--r-- 1.6 KB
dump-cache-tree.c -rw-r--r-- 1.5 KB
entry.c -rw-r--r-- 4.1 KB
environment.c -rw-r--r-- 2.3 KB
exec_cmd.c -rw-r--r-- 2.8 KB
exec_cmd.h -rw-r--r-- 295 bytes
fetch-pack.c -rw-r--r-- 16.3 KB
fetch.c -rw-r--r-- 6.6 KB
fetch.h -rw-r--r-- 1.6 KB
fsck-objects.c -rw-r--r-- 14.0 KB
generate-cmdlist.sh -rwxr-xr-x 558 bytes
git-add--interactive.perl -rwxr-xr-x 15.9 KB
git-am.sh -rwxr-xr-x 10.8 KB
git-applymbox.sh -rwxr-xr-x 2.8 KB
git-applypatch.sh -rwxr-xr-x 5.4 KB
git-archimport.perl -rwxr-xr-x 34.2 KB
git-bisect.sh -rwxr-xr-x 5.7 KB
git-checkout.sh -rwxr-xr-x 5.4 KB
git-clean.sh -rwxr-xr-x 1.5 KB
git-clone.sh -rwxr-xr-x 9.9 KB
git-commit.sh -rwxr-xr-x 13.3 KB
git-compat-util.h -rw-r--r-- 4.9 KB
git-cvsexportcommit.perl -rwxr-xr-x 7.5 KB
git-cvsimport.perl -rwxr-xr-x 25.0 KB
git-cvsserver.perl -rwxr-xr-x 90.9 KB
git-fetch.sh -rwxr-xr-x 11.2 KB
git-gc.sh -rwxr-xr-x 265 bytes
git-instaweb.sh -rwxr-xr-x 4.9 KB
git-lost-found.sh -rwxr-xr-x 468 bytes
git-ls-remote.sh -rwxr-xr-x 2.2 KB
git-merge-octopus.sh -rwxr-xr-x 2.4 KB
git-merge-one-file.sh -rwxr-xr-x 3.1 KB
git-merge-ours.sh -rwxr-xr-x 356 bytes
git-merge-resolve.sh -rwxr-xr-x 955 bytes
git-merge-stupid.sh -rwxr-xr-x 1.4 KB
git-merge.sh -rwxr-xr-x 10.4 KB
git-p4import.py -rw-r--r-- 10.5 KB
git-parse-remote.sh -rwxr-xr-x 5.8 KB
git-pull.sh -rwxr-xr-x 2.8 KB
git-quiltimport.sh -rwxr-xr-x 3.0 KB
git-rebase.sh -rwxr-xr-x 8.1 KB
git-relink.perl -rwxr-xr-x 4.0 KB
git-repack.sh -rwxr-xr-x 2.6 KB
git-request-pull.sh -rwxr-xr-x 847 bytes
git-rerere.perl -rwxr-xr-x 6.0 KB
git-reset.sh -rwxr-xr-x 2.2 KB
git-resolve.sh -rwxr-xr-x 2.7 KB
git-revert.sh -rwxr-xr-x 4.2 KB
git-send-email.perl -rwxr-xr-x 15.2 KB
git-sh-setup.sh -rwxr-xr-x 1.1 KB
git-svn.perl -rwxr-xr-x 80.1 KB
git-svnimport.perl -rwxr-xr-x 24.2 KB
git-tag.sh -rwxr-xr-x 2.7 KB
git-verify-tag.sh -rwxr-xr-x 703 bytes
git.c -rw-r--r-- 9.5 KB
git.spec.in -rw-r--r-- 7.0 KB
gitk -rwxr-xr-x 170.5 KB
grep.c -rw-r--r-- 12.8 KB
grep.h -rw-r--r-- 1.6 KB
hash-object.c -rw-r--r-- 1.8 KB
help.c -rw-r--r-- 4.8 KB
http-fetch.c -rw-r--r-- 26.1 KB
http-push.c -rw-r--r-- 66.2 KB
http.c -rw-r--r-- 11.3 KB
http.h -rw-r--r-- 2.4 KB
ident.c -rw-r--r-- 5.5 KB
imap-send.c -rw-r--r-- 28.5 KB
index-pack.c -rw-r--r-- 24.7 KB
interpolate.c -rw-r--r-- 2.0 KB
interpolate.h -rw-r--r-- 583 bytes
list-objects.c -rw-r--r-- 3.3 KB
list-objects.h -rw-r--r-- 382 bytes
local-fetch.c -rw-r--r-- 6.1 KB
lockfile.c -rw-r--r-- 1.4 KB
log-tree.c -rw-r--r-- 8.7 KB
log-tree.h -rw-r--r-- 386 bytes
merge-base.c -rw-r--r-- 1.1 KB
merge-file.c -rw-r--r-- 2.3 KB
merge-index.c -rw-r--r-- 2.7 KB
merge-recursive.c -rw-r--r-- 33.8 KB
merge-tree.c -rw-r--r-- 7.8 KB
mktag.c -rw-r--r-- 3.9 KB
mktree.c -rw-r--r-- 3.1 KB
object-refs.c -rw-r--r-- 3.0 KB
object.c -rw-r--r-- 5.4 KB
object.h -rw-r--r-- 2.4 KB
pack-check.c -rw-r--r-- 4.2 KB
pack-redundant.c -rw-r--r-- 14.3 KB
pack.h -rw-r--r-- 382 bytes
pager.c -rw-r--r-- 974 bytes
patch-delta.c -rw-r--r-- 2.2 KB
patch-id.c -rw-r--r-- 1.6 KB
path-list.c -rw-r--r-- 2.2 KB
path-list.h -rw-r--r-- 603 bytes
path.c -rw-r--r-- 6.0 KB
peek-remote.c -rw-r--r-- 1.3 KB
pkt-line.c -rw-r--r-- 2.5 KB
pkt-line.h -rw-r--r-- 348 bytes
quote.c -rw-r--r-- 7.6 KB
quote.h -rw-r--r-- 2.0 KB
read-cache.c -rw-r--r-- 24.9 KB
receive-pack.c -rw-r--r-- 10.6 KB
refs.c -rw-r--r-- 26.8 KB
refs.h -rw-r--r-- 2.0 KB
revision.c -rw-r--r-- 30.6 KB
revision.h -rw-r--r-- 3.0 KB
rsh.c -rw-r--r-- 1.7 KB
rsh.h -rw-r--r-- 159 bytes
run-command.c -rw-r--r-- 1.5 KB
run-command.h -rw-r--r-- 523 bytes
send-pack.c -rw-r--r-- 10.8 KB
server-info.c -rw-r--r-- 5.1 KB
setup.c -rw-r--r-- 6.1 KB
sha1_file.c -rw-r--r-- 44.4 KB
sha1_name.c -rw-r--r-- 12.7 KB
shallow.c -rw-r--r-- 2.3 KB
shell.c -rw-r--r-- 1.1 KB
show-index.c -rw-r--r-- 594 bytes
sideband.c -rw-r--r-- 1.9 KB
sideband.h -rw-r--r-- 335 bytes
ssh-fetch.c -rw-r--r-- 3.6 KB
ssh-pull.c -rw-r--r-- 154 bytes
ssh-push.c -rw-r--r-- 155 bytes
ssh-upload.c -rw-r--r-- 2.8 KB
strbuf.c -rw-r--r-- 768 bytes
strbuf.h -rw-r--r-- 216 bytes
tag.c -rw-r--r-- 2.6 KB
tag.h -rw-r--r-- 471 bytes
tar.h -rw-r--r-- 644 bytes
test-date.c -rw-r--r-- 378 bytes
test-delta.c -rw-r--r-- 1.7 KB
test-sha1.c -rw-r--r-- 815 bytes
test-sha1.sh -rwxr-xr-x 1.9 KB
trace.c -rw-r--r-- 3.9 KB
tree-diff.c -rw-r--r-- 6.1 KB
tree-walk.c -rw-r--r-- 4.3 KB
tree-walk.h -rw-r--r-- 863 bytes
tree.c -rw-r--r-- 5.0 KB
tree.h -rw-r--r-- 860 bytes
unpack-file.c -rw-r--r-- 812 bytes
unpack-trees.c -rw-r--r-- 18.2 KB
unpack-trees.h -rw-r--r-- 890 bytes
update-server-info.c -rw-r--r-- 457 bytes
upload-pack.c -rw-r--r-- 16.0 KB
usage.c -rw-r--r-- 1.9 KB
utf8.c -rw-r--r-- 8.2 KB
utf8.h -rw-r--r-- 191 bytes
var.c -rw-r--r-- 1.3 KB
write_or_die.c -rw-r--r-- 831 bytes
wt-status.c -rw-r--r-- 7.5 KB
wt-status.h -rw-r--r-- 451 bytes
xdiff-interface.c -rw-r--r-- 2.6 KB
xdiff-interface.h -rw-r--r-- 500 bytes

README

back to top