path: root/builtin/worktree.c
diff options
authorJunio C Hamano <>2017-04-26 06:39:08 (GMT)
committerJunio C Hamano <>2017-04-26 06:39:08 (GMT)
commitb80f629f5bcf798a3c9b37651d2369ad555e7382 (patch)
tree0a7ed758d7a74b96cb4bb713dbf66f9362a40b22 /builtin/worktree.c
parent6cbc478d83b5773d1925869e50bf6067306f4817 (diff)
parent16d2676c9ee996208277772fdf81dda212355440 (diff)
Merge branch 'jk/war-on-git-path'
While handy, "git_path()" is a dangerous function to use as a callsite that uses it safely one day can be broken by changes to other code that calls it. Reduction of its use continues. * jk/war-on-git-path: am: drop "dir" parameter from am_state_init replace strbuf_addstr(git_path()) with git_path_buf() replace xstrdup(git_path(...)) with git_pathdup(...) use git_path_* helper functions branch: add edit_description() helper bisect: add git_path_bisect_terms helper
Diffstat (limited to 'builtin/worktree.c')
1 files changed, 2 insertions, 4 deletions
diff --git a/builtin/worktree.c b/builtin/worktree.c
index 9993ded..57caa08 100644
--- a/builtin/worktree.c
+++ b/builtin/worktree.c
@@ -106,8 +106,7 @@ static void prune_worktrees(void)
printf("%s\n", reason.buf);
if (show_only)
- strbuf_reset(&path);
- strbuf_addstr(&path, git_path("worktrees/%s", d->d_name));
+ git_path_buf(&path, "worktrees/%s", d->d_name);
ret = remove_dir_recursively(&path, 0);
if (ret < 0 && errno == ENOTDIR)
ret = unlink(path.buf);
@@ -215,8 +214,7 @@ static int add_worktree(const char *path, const char *refname,
name = worktree_basename(path, &len);
- strbuf_addstr(&sb_repo,
- git_path("worktrees/%.*s", (int)(path + len - name), name));
+ git_path_buf(&sb_repo, "worktrees/%.*s", (int)(path + len - name), name);
len = sb_repo.len;
if (safe_create_leading_directories_const(sb_repo.buf))
die_errno(_("could not create leading directories of '%s'"),