I noticed a spot in builtin/bundle.c that would benefit from using
prefix_filename(). But when I tried to use it, I noticed its interface
was a little error-prone (because it returns a static buffer). And
indeed, a little digging found a bug in hash-object related to this.

So here's the fix for the hash-object bug, some cleanups to make such
bugs less likely, and then finally the bundle conversion. The bundle
thing does fix some minor bugs. It _could_ come before the cleanups if
we wanted to float the fixes to the top, but the function is much more
pleasant to call after the cleanups. :)

  [1/6]: hash-object: fix buffer reuse with --path in a subdirectory
  [2/6]: prefix_filename: move docstring to header file
  [3/6]: prefix_filename: drop length parameter
  [4/6]: prefix_filename: return newly allocated string
  [5/6]: prefix_filename: simplify windows #ifdef
  [6/6]: bundle: use prefix_filename with bundle path

 abspath.c              | 30 +++++++++++-------------------
 apply.c                | 11 ++++++-----
 builtin/bundle.c       |  8 +-------
 builtin/config.c       |  4 +---
 builtin/hash-object.c  | 10 +++++-----
 builtin/log.c          |  3 +--
 builtin/mailinfo.c     | 11 ++---------
 builtin/merge-file.c   | 18 +++++++++++-------
 builtin/rev-parse.c    |  6 +++---
 builtin/worktree.c     |  5 +++--
 cache.h                | 14 +++++++++++++-
 diff-no-index.c        |  7 +++----
 diff.c                 |  6 +++---
 parse-options.c        |  2 +-
 setup.c                | 11 ++++++++---
 t/t1007-hash-object.sh | 10 ++++++++++
 worktree.c             |  5 ++++-
 17 files changed, 86 insertions(+), 75 deletions(-)

-Peff

Reply via email to