1. 21 6月, 2009 1 次提交
  2. 15 6月, 2009 1 次提交
  3. 14 6月, 2009 1 次提交
  4. 25 5月, 2009 1 次提交
  5. 11 5月, 2009 2 次提交
  6. 06 5月, 2009 1 次提交
  7. 30 4月, 2009 1 次提交
    • J
      diff -c -p: do not die on submodules · 7dae8b21
      Junio C Hamano 提交于
      The combine diff logic knew only about blobs (and their checked-out form
      in the work tree, either regular files or symlinks), and barfed when fed
      submodules.  This "externalizes" gitlinks in the same way as the normal
      patch generation codepath does (i.e. "Subproject commit Xxx\n") to fix the
      issue.
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      7dae8b21
  8. 28 4月, 2009 3 次提交
  9. 23 4月, 2009 1 次提交
  10. 19 4月, 2009 2 次提交
  11. 18 4月, 2009 1 次提交
    • T
      Fix buffer overflow in config parser · e0b3cc0d
      Thomas Jarosch 提交于
      When interpreting a config value, the config parser reads in 1+ space
      character(s) and puts -one- space character in the buffer as soon as
      the first non-space character is encountered (if not inside quotes).
      
      Unfortunately the buffer size check lacks the extra space character
      which gets inserted at the next non-space character, resulting in
      a crash with a specially crafted config entry.
      
      The unit test now uses Java to compile a platform independent
      .NET framework to output the test string in C# :o)
      
          Read: Thanks to Johannes Sixt for the correct printf call
          which replaces the perl invocation.
      Signed-off-by: NThomas Jarosch <thomas.jarosch@intra2net.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      e0b3cc0d
  12. 13 4月, 2009 2 次提交
  13. 09 4月, 2009 1 次提交
    • B
      process_{tree,blob}: Remove useless xstrdup calls · de551d47
      Björn Steinbrink 提交于
      The name of the processed object was duplicated for passing it to
      add_object(), but that already calls path_name, which allocates a new
      string anyway. So the memory allocated by the xstrdup calls just went
      nowhere, leaking memory.
      
      This reduces the RSS usage for a "rev-list --all --objects" by about 10% on
      the gentoo repo (fully packed) as well as linux-2.6.git:
      
          gentoo:
                          | old           | new
          ----------------|-------------------------------
          RSS             |       1537284 |       1388408
          VSZ             |       1816852 |       1667952
          time elapsed    |       1:49.62 |       1:48.99
          min. page faults|        417178 |        379919
      
          linux-2.6.git:
                          | old           | new
          ----------------|-------------------------------
          RSS             |        324452 |        292996
          VSZ             |        491792 |        460376
          time elapsed    |       0:14.53 |       0:14.28
          min. page faults|         89360 |         81613
      Signed-off-by: NBjörn Steinbrink <B.Steinbrink@gmx.de>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      de551d47
  14. 08 4月, 2009 3 次提交
  15. 05 4月, 2009 2 次提交
  16. 02 4月, 2009 1 次提交
  17. 31 3月, 2009 3 次提交
  18. 30 3月, 2009 2 次提交
  19. 25 3月, 2009 2 次提交
    • L
      close_sha1_file(): make it easier to diagnose errors · e8bd78c3
      Linus Torvalds 提交于
      A bug report with "unable to write sha1 file" made us realize that we do
      not have enough information to guess why close() is failing.
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      e8bd78c3
    • N
      avoid possible overflow in delta size filtering computation · 720fe22d
      Nicolas Pitre 提交于
      On a 32-bit system, the maximum possible size for an object is less than
      4GB, while 64-bit systems may cope with larger objects.  Due to this
      limitation, variables holding object sizes are using an unsigned long
      type (32 bits on 32-bit systems, or 64 bits on 64-bit systems).
      
      When large objects are encountered, and/or people play with large delta
      depth values, it is possible for the maximum allowed delta size
      computation to overflow, especially on a 32-bit system.  When this
      occurs, surviving result bits may represent a value much smaller than
      what it is supposed to be, or even zero.  This prevents some objects
      from being deltified although they do get deltified when a smaller depth
      limit is used.  Fix this by always performing a 64-bit multiplication.
      Signed-off-by: NNicolas Pitre <nico@cam.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      720fe22d
  20. 23 3月, 2009 1 次提交
  21. 13 3月, 2009 4 次提交
  22. 01 3月, 2009 1 次提交
  23. 28 2月, 2009 1 次提交
  24. 27 2月, 2009 1 次提交
    • C
      bisect: fix quoting TRIED revs when "bad" commit is also "skip"ped · 1b249ffe
      Christian Couder 提交于
      When the "bad" commit was also "skip"ped and when more than one
      commit was skipped, the "filter_skipped" function would have
      printed something like:
      
          bisect_rev=<hash1>|<hash2>
      
      (where <hash1> and <hash2> are hexadecimal sha1 hashes)
      
      and this would have been evaled later as piping "bisect_rev=<hash1>"
      into "<hash2>", which would have failed.
      
      So this patch makes the "filter_skipped" function properly quote
      what it outputs, so that it will print something like:
      
      bisect_rev='<hash1>|<hash2>'
      
      which will be properly evaled later.  The caller was not stopping
      properly because the scriptlet this function returned to be evaled
      was not strung together with && and because of this, an error in
      an earlier part of the output was simply ignored.
      
      A test case is added to the test suite.
      
      And while at it, we also initialize the VARS, FOUND and TRIED
      variables, so that we protect ourselves from environment variables
      the user may have with these names.
      Signed-off-by: NChristian Couder <chriscool@tuxfamily.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      1b249ffe
  25. 13 2月, 2009 1 次提交
    • F
      Support "\" in non-wildcard exclusion entries · dd482eea
      Finn Arne Gangstad 提交于
      "\" was treated differently in exclude rules depending on whether a
      wildcard match was done. For wildcard rules, "\" was de-escaped in
      fnmatch, but this was not done for other rules since they used strcmp
      instead.  A file named "#foo" would not be excluded by "\#foo", but would
      be excluded by "\#foo*".
      
      We now treat all rules with "\" as wildcard rules.
      
      Another solution could be to de-escape all non-wildcard rules as we
      read them, but we would have to do the de-escaping exactly as fnmatch
      does it to avoid inconsistencies.
      Signed-off-by: NFinn Arne Gangstad <finnag@pvv.org>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      dd482eea