Permalink
Commits on Dec 15, 2010
  1. Git 1.6.6.3

    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    gitster committed Dec 15, 2010
  2. Git 1.6.5.9

    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    gitster committed Dec 15, 2010
  3. Git 1.6.4.5

    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    gitster committed Dec 15, 2010
  4. gitweb: Introduce esc_attr to escape attributes of HTML elements

    It is needed only to escape attributes of handcrafted HTML elements,
    and not those generated using CGI.pm subroutines / methods for HTML
    generation.
    
    While at it, add esc_url and esc_html where needed, and prefer to use
    CGI.pm HTML generating methods than handcrafted HTML code.  Most of
    those are probably unnecessary (could be exploited only by person with
    write access to gitweb config, or at least access to the repository).
    
    This fixes CVE-2010-3906
    
    Reported-by: Emanuele Gentili <e.gentili@tigersecurity.it>
    Helped-by: John 'Warthog9' Hawley <warthog9@kernel.org>
    Helped-by: Jonathan Nieder <jrnieder@gmail.com>
    Signed-off-by: Jakub Narebski <jnareb@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    jnareb committed with gitster Dec 14, 2010
Commits on Jul 26, 2010
  1. Merge branch 'maint-1.6.5' into maint-1.6.6

    * maint-1.6.5:
      request-pull.txt: Document -p option
      Check size of path buffer before writing into it
      rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option
    gitster committed Jul 26, 2010
  2. request-pull.txt: Document -p option

    Signed-off-by: Stephen Boyd <bebarino@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    bebarino committed with gitster Jul 23, 2010
  3. Merge branch 'maint-1.6.4' into maint-1.6.5

    * maint-1.6.4:
      Check size of path buffer before writing into it
      rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option
    gitster committed Jul 26, 2010
Commits on Jul 25, 2010
  1. Check size of path buffer before writing into it

    This prevents a buffer overrun that could otherwise be triggered by
    creating a file called '.git' with contents
    
      gitdir: (something really long)
    
    Signed-off-by: Greg Brockman <gdb@mit.edu>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    Greg Brockman committed with gitster Jul 20, 2010
Commits on Jul 7, 2010
  1. rev-parse: fix --parse-opt --keep-dashdash --stop-at-non-option

    The ?: operator has a lower priority than |, so the implicit associativity
    made the 6th argument of parse_options be PARSE_OPT_KEEP_DASHDASH if
    keep_dashdash was true discarding PARSE_OPT_STOP_AT_NON_OPTION and
    PARSE_OPT_SHELL_EVAL.
    
    Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    Uwe Kleine-König committed with gitster Jul 6, 2010
Commits on Apr 19, 2010
  1. MSVC: Fix build by adding missing termios.h dummy

    A use of this header file was introduced in eb80042 (Add missing #include
    to support TIOCGWINSZ on Solaris, 2010-01-11).
    
    Signed-off-by: Johannes Sixt <j6t@kdbg.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    j6t committed with gitster Apr 19, 2010
Commits on Mar 21, 2010
  1. Documentation/git-clone: Transform description list into item list

    so that the list of examples is formatted in the same way as for
    git-fetch, and, more importantly, the different identation for the
    code blocks in the examples (compared to the immediately preceding code
    blocks from url.txt) doesn't look like misformatted, but is clarified by
    the items' bullets.
    
    Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    mjg committed with gitster Mar 21, 2010
  2. Documentation/urls: Remove spurious example markers

    In urls.txt (which is included from git-{clone,fetch,push}.txt)
    several item lists are surrounded by example block markers. This is
    problematic for two reasons:
    
    - None of these lists are example lists, so they should not be marked as
      such semantically.
    - The html output looks weird (bulleted list with left sidebar).
    
    Therefore, remove the example block markers. Output by the man backend
    is unaffected.
    
    Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    mjg committed with gitster Mar 21, 2010
  3. Documentation/gitdiffcore: Remove misleading date in heading

    Ever since the automatic conversion into man form, the heading
    contained a misidentified subheading reading "June 2005".
    Remove this since the documentation is more recent, and the correct
    date is in the footer.
    
    Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    mjg committed with gitster Mar 21, 2010
  4. Documentation/git-reflog: Fix formatting of command lists

    A misplaced list continuation mark appears literally in the
    rendered doc. Fix this by removing it.
    
    Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    mjg committed with gitster Mar 21, 2010
Commits on Mar 7, 2010
  1. Merge branch 'jc/maint-fix-test-perm' into maint-1.6.6

    * jc/maint-fix-test-perm:
      lib-patch-mode.sh: Fix permission
      t6000lib: Fix permission
    gitster committed Mar 7, 2010
  2. Merge branch 'sp/maint-push-sideband' into maint-1.6.6

    * sp/maint-push-sideband:
      receive-pack: Send internal errors over side-band #2
      t5401: Use a bare repository for the remote peer
      receive-pack: Send hook output over side band #2
      receive-pack: Wrap status reports inside side-band-64k
      receive-pack: Refactor how capabilities are shown to the client
      send-pack: demultiplex a sideband stream with status data
      run-command: support custom fd-set in async
      run-command: Allow stderr to be a caller supplied pipe
    gitster committed Mar 7, 2010
  3. Merge branch 'hm/maint-imap-send-crlf' into maint-1.6.6

    * hm/maint-imap-send-crlf:
      git-imap-send: Convert LF to CRLF before storing patch to draft box
    gitster committed Mar 7, 2010
  4. Merge branch 'gf/maint-sh-setup-nongit-ok' into maint-1.6.6

    * gf/maint-sh-setup-nongit-ok:
      require_work_tree broken with NONGIT_OK
    gitster committed Mar 7, 2010
  5. Merge branch 'jk/maint-rmdir-fix' into maint-1.6.6

    * jk/maint-rmdir-fix:
      rm: fix bug in recursive subdirectory removal
    gitster committed Mar 7, 2010
  6. Merge branch 'rs/optim-text-wrap' into maint-1.6.6

    * rs/optim-text-wrap:
      utf8.c: speculatively assume utf-8 in strbuf_add_wrapped_text()
      utf8.c: remove strbuf_write()
      utf8.c: remove print_spaces()
      utf8.c: remove print_wrapped_text()
    gitster committed Mar 7, 2010
  7. Merge branch 'tr/maint-cherry-pick-list' into maint-1.6.6

    * tr/maint-cherry-pick-list:
      cherry_pick_list: quit early if one side is empty
    gitster committed Mar 7, 2010
  8. Merge branch 'cc/maint-bisect-paths' into maint-1.6.6

    * cc/maint-bisect-paths:
      bisect: error out when passing bad path parameters
    gitster committed Mar 7, 2010
Commits on Mar 5, 2010
  1. Merge branch 'maint-1.6.5' into maint-1.6.6

    * maint-1.6.5:
      Remove extra '-' from git-am(1)
    gitster committed Mar 5, 2010
  2. Remove extra '-' from git-am(1)

    Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    wentasah committed with gitster Mar 4, 2010
Commits on Mar 1, 2010
  1. bisect: error out when passing bad path parameters

    As reported by Mark Lodato, "git bisect", when it was started with
    path parameters that match no commit was kind of working without
    taking account of path parameters and was reporting something like:
    
    Bisecting: -1 revisions left to test after this (roughly 0 steps)
    
    It is more correct and safer to just error out in this case, before
    displaying the revisions left, so this patch does just that.
    
    Note that this bug is very old, it exists at least since v1.5.5.
    And it is possible to detect that case earlier in the bisect
    algorithm, but it is not clear that it would be an improvement to
    error out earlier, on the contrary it may change the behavior of
    "git rev-list --bisect-all" for example, which is currently correct.
    
    Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    chriscool committed with gitster Feb 28, 2010
Commits on Feb 25, 2010
  1. t3301-notes: insert a shbang line in ./fake_editor.sh

    This is required on Windows because git-notes is now a built-in
    rather than a shell script.
    
    Signed-off-by: Johannes Sixt <j6t@kdbg.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    j6t committed with gitster Feb 25, 2010
Commits on Feb 20, 2010
  1. cherry_pick_list: quit early if one side is empty

    The --cherry-pick logic starts by counting the commits on each side,
    so that it can filter away commits on the bigger one.  However, so
    far it missed an opportunity for optimization: it doesn't need to do
    any work if either side is empty.
    
    This in particular helps the common use-case 'git rebase -i HEAD~$n':
    it internally uses --cherry-pick, but since HEAD~$n is a direct
    ancestor the left side is always empty.
    
    Signed-off-by: Thomas Rast <trast@student.ethz.ch>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    trast committed with gitster Feb 20, 2010
  2. utf8.c: speculatively assume utf-8 in strbuf_add_wrapped_text()

    is_utf8() works by calling utf8_width() for each character at the
    supplied location.  In strbuf_add_wrapped_text(), we do that anyway
    while wrapping the lines.  So instead of checking the encoding
    beforehand, optimistically assume that it's utf-8 and wrap along
    until an invalid character is hit, and when that happens start over.
    
    This pays off if the text consists only of valid utf-8 characters.
    The following command was run against the Linux kernel repo with
    git 1.7.0:
    
    	$ time git log --format='%b' v2.6.32 >/dev/null
    
    	real	0m2.679s
    	user	0m2.580s
    	sys	0m0.100s
    
    	$ time git log --format='%w(60,4,8)%b' >/dev/null
    
    	real	0m4.342s
    	user	0m4.230s
    	sys	0m0.110s
    
    And with this patch series:
    
    	$ time git log --format='%w(60,4,8)%b' >/dev/null
    
    	real	0m3.741s
    	user	0m3.630s
    	sys	0m0.110s
    
    So the cost of wrapping is reduced to 70% in this case.
    
    Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    René Scharfe committed with gitster Feb 19, 2010
  3. utf8.c: remove strbuf_write()

    The patch before the previous one made sure that all callers of
    strbuf_add_wrapped_text() supply a strbuf.  Replace all calls of
    strbuf_write() with regular strbuf functions and remove it.
    
    Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    René Scharfe committed with gitster Feb 19, 2010
  4. utf8.c: remove print_spaces()

    The previous patch made sure that strbuf_add_wrapped_text() (and thus
    strbuf_add_indented_text(), too) always get a strbuf.  Make use of
    this fact by adding strbuf_addchars(), a small helper that adds a
    char the specified number of times to a strbuf, and use it to replace
    print_spaces().
    
    Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    René Scharfe committed with gitster Feb 19, 2010
  5. utf8.c: remove print_wrapped_text()

    strbuf_add_wrapped_text() is called only from print_wrapped_text()
    without a strbuf (in which case it writes its results to stdout).
    
    At its only callsite, supply a strbuf, call strbuf_add_wrapped_text()
    directly and remove the wrapper function.
    
    Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    René Scharfe committed with gitster Feb 19, 2010
Commits on Feb 19, 2010
  1. rm: fix bug in recursive subdirectory removal

    If we remove a path in a/deep/subdirectory, we should try to
    remove as many trailing components as possible (i.e.,
    subdirectory, then deep, then a). However, the test for the
    return value of rmdir was reversed, so we only ever deleted
    at most one level.
    
    The fix is in remove_path, so "apply" and "merge-recursive"
    also are fixed.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    peff committed with gitster Feb 19, 2010
Commits on Feb 17, 2010
  1. require_work_tree broken with NONGIT_OK

    With NONGIT_OK set, require_work_tree function outside a git repository
    gives a syntax error.  This is caused by an incorrect use of "test" that
    didn't anticipate $(git rev-parse --is-inside-work-tree) may return an
    empty string.
    
    Properly quote the argument to "test", and send the standard error stream
    to /dev/null to avoid giving duplicate error messages.
    
    Signed-off-by: Gabriel Filion <lelutin@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    lelutin committed with gitster Feb 17, 2010
Commits on Feb 16, 2010
  1. Merge branch 'maint-1.6.5' into maint-1.6.6

    * maint-1.6.5:
      dwim_ref: fix dangling symref warning
      stash pop: remove 'apply' options during 'drop' invocation
      diff: make sure --output=/bad/path is caught
    gitster committed Feb 16, 2010
  2. dwim_ref: fix dangling symref warning

    If we encounter a symref that is dangling, in most cases we will warn
    about it. The one exception is a dangling HEAD, as that indicates a
    branch yet to be born.
    
    However, the check in dwim_ref was not quite right. If we were fed
    something like "HEAD^0" we would try to resolve "HEAD", see that it is
    dangling, and then check whether the _original_ string we got was
    "HEAD" (which it wasn't in this case). And that makes no sense; the
    dangling thing we found was not "HEAD^0" but rather "HEAD".
    
    Fixing this squelches a scary warning from "submodule summary HEAD" (and
    consequently "git status" with status.submodulesummary set) in an empty
    repo, as the submodule script calls "git rev-parse -q --verify HEAD^0".
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    peff committed with gitster Feb 16, 2010