summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-01-31Merge branch 'maint-1.6.0' into maintLibravatar Junio C Hamano1-3/+6
* maint-1.6.0: merge: fix out-of-bounds memory access
2009-01-31merge: fix out-of-bounds memory accessLibravatar René Scharfe1-3/+6
The parameter n of unpack_callback() can have a value of up to MAX_UNPACK_TREES. The check at the top of unpack_trees() (its only (indirect) caller) makes sure it cannot exceed this limit. unpack_callback() passes it and the array src to unpack_nondirectories(), which has this loop: for (i = 0; i < n; i++) { /* ... */ src[i + o->merge] = o->df_conflict_entry; o->merge can be 0 or 1, so unpack_nondirectories() potentially accesses the array src at index MAX_UNPACK_TREES. This patch makes it big enough. Reported-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: René Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-29GIT 1.6.1.2Libravatar Junio C Hamano3-2/+41
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-28Merge branch 'jc/maint-format-patch-o-relative' into maintLibravatar Junio C Hamano2-4/+76
* jc/maint-format-patch-o-relative: Teach format-patch to handle output directory relative to cwd Conflicts: t/t4014-format-patch.sh
2009-01-28Merge branch 'bs/maint-rename-populate-filespec' into maintLibravatar Junio C Hamano1-2/+7
* bs/maint-rename-populate-filespec: Rename detection: Avoid repeated filespec population
2009-01-28Merge branch 'mh/maint-commit-color-status' into maintLibravatar Junio C Hamano1-0/+6
* mh/maint-commit-color-status: git-status -v: color diff output when color.ui is set git-commit: color status output when color.ui is set
2009-01-28Merge branch 'nd/grep-assume-unchanged' into maintLibravatar Junio C Hamano2-2/+20
* nd/grep-assume-unchanged: grep: grep cache entries if they are "assume unchanged" grep: support --no-ext-grep to test builtin grep
2009-01-28Merge branch 'jc/maint-ls-tree' into maintLibravatar Junio C Hamano2-2/+13
* jc/maint-ls-tree: Document git-ls-tree --full-tree ls-tree: add --full-tree option
2009-01-28Merge branch 'np/no-loosen-prune-expire-now' into maintLibravatar Junio C Hamano2-3/+9
* np/no-loosen-prune-expire-now: objects to be pruned immediately don't have to be loosened
2009-01-28Merge branch 'mc/cd-p-pwd' into maintLibravatar Junio C Hamano2-3/+3
* mc/cd-p-pwd: git-sh-setup: Fix scripts whose PWD is a symlink to a work-dir on OS X
2009-01-28Merge branch 'maint-1.6.0' into maintLibravatar Junio C Hamano1-1/+2
* maint-1.6.0: avoid 31-bit truncation in write_loose_object
2009-01-28avoid 31-bit truncation in write_loose_objectLibravatar Jeff King1-1/+2
The size of the content we are adding may be larger than 2.1G (i.e., "git add gigantic-file"). Most of the code-path to do so uses size_t or unsigned long to record the size, but write_loose_object uses a signed int. On platforms where "int" is 32-bits (which includes x86_64 Linux platforms), we end up passing malloc a negative size. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-27send-pack: do not send unknown object name from ".have" to pack-objectsLibravatar Junio C Hamano2-22/+127
v1.6.1 introduced ".have" extension to the protocol to allow the receiving side to advertise objects that are reachable from refs in the repositories it borrows from. This was meant to be used by the sending side to avoid sending such objects; they are already available through the alternates mechanism. The client side implementation in v1.6.1, which was introduced with 40c155f (push: prepare sender to receive extended ref information from the receiver, 2008-09-09) aka v1.6.1-rc1~203^2~1, were faulty in that it did not consider the possiblity that the repository receiver borrows from might have objects it does not know about. This fixes it by refraining from passing missing commits to underlying pack-objects. Revision machinery may need to be tightened further to treat missing uninteresting objects as non-error events, but this is an obvious and safe fix for a maintenance release that is almost good enough. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-27Merge branch 'maint-1.6.0' into maintLibravatar Junio C Hamano2-2/+2
* maint-1.6.0: test-path-utils: Fix off by one, found by valgrind get_sha1_basic(): fix invalid memory access, found by valgrind
2009-01-27test-path-utils: Fix off by one, found by valgrindLibravatar Johannes Schindelin1-1/+1
When normalizing an absolute path, we might have to add a slash _and_ a NUL to the buffer, so the buffer was one too small. Let's just future proof the code and alloc PATH_MAX + 1 bytes. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-27get_sha1_basic(): fix invalid memory access, found by valgrindLibravatar Johannes Schindelin1-1/+1
When get_sha1_basic() is passed a buffer of len 0, it should not check if buf[len-1] is a curly bracket. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-25GIT 1.6.1.1Libravatar Junio C Hamano2-8/+18
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-23Merge branch 'cb/maint-unpack-trees-absense' into maintLibravatar Junio C Hamano2-18/+67
* cb/maint-unpack-trees-absense: unpack-trees: remove redundant path search in verify_absent unpack-trees: fix path search bug in verify_absent unpack-trees: handle failure in verify_absent
2009-01-23Merge branch 'tr/maint-no-index-fixes' into maintLibravatar Junio C Hamano3-10/+20
* tr/maint-no-index-fixes: diff --no-index -q: fix endless loop diff --no-index: test for pager after option parsing diff: accept -- when using --no-index
2009-01-23Merge branch 'rs/maint-shortlog-foldline' into maintLibravatar Junio C Hamano2-5/+8
* rs/maint-shortlog-foldline: shortlog: handle multi-line subjects like log --pretty=oneline et. al. do
2009-01-23Merge branch 'pj/maint-ldflags' into maintLibravatar Junio C Hamano1-2/+2
* pj/maint-ldflags: configure clobbers LDFLAGS
2009-01-23Merge branch 'pb/maint-git-pm-false-dir' into maintLibravatar Junio C Hamano1-3/+4
* pb/maint-git-pm-false-dir: Git.pm: correctly handle directory name that evaluates to "false"
2009-01-23Merge branch 'js/maint-bisect-gitk' into maintLibravatar Junio C Hamano1-1/+1
* js/maint-bisect-gitk: bisect view: call gitk if Cygwin's SESSIONNAME variable is set
2009-01-23Merge branch 'js/add-not-submodule' into maintLibravatar Junio C Hamano2-0/+53
* js/add-not-submodule: git add: do not add files from a submodule
2009-01-23Merge branch 'jc/maint-format-patch' into maintLibravatar Junio C Hamano1-0/+7
* jc/maint-format-patch: format-patch: show patch text for the root commit
2009-01-23Merge branch 'am/maint-push-doc' into maintLibravatar Junio C Hamano1-7/+8
* am/maint-push-doc: Documentation: avoid using undefined parameters Documentation: mention branches rather than heads Documentation: remove a redundant elaboration Documentation: git push repository can also be a remote
2009-01-23Merge branch 'maint-1.6.0' into maintLibravatar Junio C Hamano1-1/+1
* maint-1.6.0: Fix Documentation for git-describe
2009-01-23Fix Documentation for git-describeLibravatar Boyd Stephen Smith Jr1-1/+1
The documentation for git-describe says the default abbreviation is 8 hexadecimal digits while cache.c clearly shows DEFAULT_ABBREV set to 7. This patch corrects the documentation. Signed-off-by: Boyd Stephen Smith Jr <bss@iguanasuicide.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-21Rename diff.suppress-blank-empty to diff.suppressBlankEmptyLibravatar Johannes Schindelin3-6/+8
All the other config variables use CamelCase. This config variable should not be an exception. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-21Rename detection: Avoid repeated filespec populationLibravatar Björn Steinbrink1-2/+7
In diffcore_rename, we assume that the blob contents in the filespec aren't required anymore after estimate_similarity has been called and thus we free it. But estimate_similarity might return early when the file sizes differ too much. In that case, cnt_data is never set and the next call to estimate_similarity will populate the filespec again, eventually rereading the same blob over and over again. To fix that, we first get the blob sizes and only when the blob contents are actually required, and when cnt_data will be set, the full filespec is populated, once. Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-19shell: Document that 'cvs server' is a valid commandLibravatar Lars Noschinski1-2/+3
git-shell's man page explicitly lists all allowed commands, but 'cvs server' was missing. Add it. Signed-off-by: Lars Noschinski <lars@public.noschinski.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-18Documentation: avoid using undefined parametersLibravatar Anders Melchiorsen1-2/+2
The <ref> parameter has not been introduced, so rewrite to avoid it. Signed-off-by: Anders Melchiorsen <mail@cup.kalibalik.dk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-18Documentation: mention branches rather than headsLibravatar Anders Melchiorsen1-2/+2
The "matching refs" semantics works only on matching branches these days. Instead of using "heads" which traditionally has been used more or less interchangeably with "refs", say "branch" explicitly here. Signed-off-by: Anders Melchiorsen <mail@cup.kalibalik.dk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-18Documentation: remove a redundant elaborationLibravatar Anders Melchiorsen1-2/+1
The comment in parentheses is wrong, as one has to leave out both the colon and <dst>. This situation is covered by the section a few lines down: A parameter <ref> without a colon pushes the <ref> from the source repository to the destination repository under the same name. So, just remove the parentheses. Signed-off-by: Anders Melchiorsen <mail@cup.kalibalik.dk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-18Documentation: git push repository can also be a remoteLibravatar Anders Melchiorsen1-1/+3
This is copied from pull-fetch-param.txt and helps the reader to not get stuck in the URL section. Signed-off-by: Anders Melchiorsen <mail@cup.kalibalik.dk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17Update draft release notes for 1.6.1.1Libravatar Junio C Hamano1-1/+6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17Merge branch 'maint-1.6.0' into maintLibravatar Junio C Hamano4-4/+6
* maint-1.6.0: builtin-fsck: fix off by one head count Documentation: let asciidoc align related options githooks.txt: add missing word builtin-commit.c: do not remove COMMIT_EDITMSG
2009-01-17builtin-fsck: fix off by one head countLibravatar Christian Couder1-1/+1
According to the man page, if "git fsck" is passed one or more heads, it should verify connectivity and validity of only objects reachable from the heads it is passed. However, since 5ac0a20 (Make builtin-fsck.c use parse_options., 2007-10-15) the command behaved as if no heads were passed, when given only one argument. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17t5540: clarify that http-push does not handle packed-refs on the remoteLibravatar Johannes Schindelin1-3/+15
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17http-push: when making directories, have a trailing slash in the path nameLibravatar Johannes Schindelin3-2/+11
The function lock_remote() sends MKCOL requests to make leading directories; However, if it does not put a forward slash '/' at the end of the path, the server sends a 301 redirect. By leaving the '/' in place, we can avoid this additional step. Incidentally, at least one version of Curl (7.16.3) does not resend credentials when it follows a 301 redirect, so this commit also fixes a bug. Original patch by Tay Ray Chuan <rctay89@gmail.com>. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17http-push: fix off-by-path_lenLibravatar Johannes Schindelin1-3/+7
When getting the result of remote_ls(), we were advancing the variable "path" to the relative path inside the repository. However, then we went on to malloc a bogus amount of memory: we were subtracting the prefix length _again_, quite possibly getting something negative, which xmalloc() interprets as really, really much. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17Documentation: let asciidoc align related optionsLibravatar Markus Heidelberg1-1/+4
Command line options can share the same paragraph of description, if they are related or synonymous. In these cases they should be written among each other, so that asciidoc can format them itself. Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17githooks.txt: add missing wordLibravatar Stephan Beyer1-1/+1
Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-17builtin-commit.c: do not remove COMMIT_EDITMSGLibravatar Stephan Beyer1-1/+0
git-commit tries to remove the file ./COMMIT_EDITMSG instead of $GIT_DIR/COMMIT_EDITMSG after commit preparation (e.g. running hooks, launching editor). This behavior exists since f5bbc3225c4b07 "Port git commit to C". Some test cases (e.g. t/t7502-commit.sh) rely on the existence of $GIT_DIR/COMMIT_EDITMSG after committing and, I guess, many people are used to it. So it is best not to remove it. This patch just removes the removal of COMMIT_EDITMSG. Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-15Merge branch 'maint-1.6.0' into maintLibravatar Junio C Hamano2-0/+34
* maint-1.6.0: t3404: Add test case for auto-amending only edited commits after "edit" t3404: Add test case for aborted --continue after "edit" t3501: check that commits are actually done
2009-01-15t3404: Add test case for auto-amending only edited commits after "edit"Libravatar Stephan Beyer1-0/+17
Add a test case for the bugfix introduced by commit c14c3c82d "git-rebase--interactive: auto amend only edited commit". Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-15t3404: Add test case for aborted --continue after "edit"Libravatar Stephan Beyer1-0/+15
Add a test case for the bugfix introduced by commit 8beb1f33d "git-rebase-interactive: do not squash commits on abort". Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-15t3501: check that commits are actually doneLibravatar Stephan Beyer1-0/+2
The basic idea of t3501 is to check whether revert and cherry-pick works on renamed files. But as there is no pure cherry-pick/revert test, it is good to also check if commits are actually done in that scenario. Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-01-14Update draft release notes to 1.6.1.1Libravatar Junio C Hamano1-2/+23
2009-01-14Merge branch 'maint-1.6.0' into maintLibravatar Junio C Hamano2-0/+26
* maint-1.6.0: fix handling of multiple untracked files for git mv -k add test cases for "git mv -k"