diff options
| author | Jeff King <peff@peff.net> | 2025-01-09 03:49:44 -0500 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2025-01-09 12:24:25 -0800 |
| commit | b20d7d348c4d32777cd577c221de529452baca03 (patch) | |
| tree | 26829f9f538b1254edef38a7fbc2dcde89ed6e40 /tree-diff.c | |
| parent | tree-diff: pass whole path string to path_appendnew() (diff) | |
| download | git-b20d7d348c4d32777cd577c221de529452baca03.tar.gz git-b20d7d348c4d32777cd577c221de529452baca03.zip | |
tree-diff: inline path_appendnew()
Our path_appendnew() has been simplified to the point that it is mostly
just implementing combine_diff_path_new(), plus setting the "next"
pointer. Since there's only one caller, let's replace it completely with
a call to that helper function.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'tree-diff.c')
| -rw-r--r-- | tree-diff.c | 31 |
1 files changed, 4 insertions, 27 deletions
diff --git a/tree-diff.c b/tree-diff.c index d2f8dd14a6..18e5a16716 100644 --- a/tree-diff.c +++ b/tree-diff.c @@ -125,32 +125,6 @@ static int emit_diff_first_parent_only(struct diff_options *opt, struct combine_ /* - * Make a new combine_diff_path from path/mode/sha1 - * and append it to paths list tail. - */ -static struct combine_diff_path *path_appendnew(struct combine_diff_path *last, - int nparent, const char *path, size_t len, - unsigned mode, const struct object_id *oid) -{ - struct combine_diff_path *p; - size_t alloclen = combine_diff_path_size(nparent, len); - - p = xmalloc(alloclen); - p->next = NULL; - last->next = p; - - p->path = (char *)&(p->parent[nparent]); - memcpy(p->path, path, len); - p->path[len] = 0; - p->mode = mode; - oidcpy(&p->oid, oid ? oid : null_oid()); - - memset(p->parent, 0, sizeof(p->parent[0]) * nparent); - - return p; -} - -/* * new path should be added to combine diff * * 3 cases on how/when it should be called and behaves: @@ -206,7 +180,10 @@ static struct combine_diff_path *emit_path(struct combine_diff_path *p, struct combine_diff_path *pprev = p; strbuf_add(base, path, pathlen); - p = path_appendnew(p, nparent, base->buf, base->len, mode, oid); + p = combine_diff_path_new(base->buf, base->len, mode, + oid ? oid : null_oid(), + nparent); + pprev->next = p; strbuf_setlen(base, old_baselen); for (i = 0; i < nparent; ++i) { |
