Message ID | 20240608183901.2084546-1-gitster@pobox.com (mailing list archive) |
---|---|
State | Accepted |
Commit | bf6a86236e829d08c92356e5c861193ccb516ef7 |
Headers | show |
Series | worktree_git_path(): move the declaration to path.h | expand |
On Sat, Jun 8, 2024 at 6:39 PM Junio C Hamano <gitster@pobox.com> wrote: > > The definition of this function is in path.c but its declaration is > in worktree.h, which is something unexpected. The function is > explained as "Similar to git_path()"; declaring it next to where > git_path() is declared would make more sense. > > Signed-off-by: Junio C Hamano <gitster@pobox.com> > --- > path.h | 9 +++++++++ > revision.c | 1 + > worktree.h | 8 -------- > 3 files changed, 10 insertions(+), 8 deletions(-) > > diff --git a/path.h b/path.h > index c3bc8617bd..a6f0b70692 100644 > --- a/path.h > +++ b/path.h > @@ -4,6 +4,7 @@ > struct repository; > struct strbuf; > struct string_list; > +struct worktree; > > /* > * The result to all functions which return statically allocated memory may be > @@ -81,6 +82,14 @@ void strbuf_repo_git_path(struct strbuf *sb, > const char *git_path(const char *fmt, ...) > __attribute__((format (printf, 1, 2))); > > +/* > + * Similar to git_path() but can produce paths for a specified > + * worktree instead of current one > + */ > +const char *worktree_git_path(const struct worktree *wt, > + const char *fmt, ...) > + __attribute__((format (printf, 2, 3))); > + > /* > * Return a path into the main repository's (the_repository) git directory. > */ > diff --git a/revision.c b/revision.c > index 7ddf0f151a..09024cf4aa 100644 > --- a/revision.c > +++ b/revision.c > @@ -29,6 +29,7 @@ > #include "bisect.h" > #include "packfile.h" > #include "worktree.h" > +#include "path.h" > #include "read-cache.h" > #include "setup.h" > #include "sparse-index.h" > diff --git a/worktree.h b/worktree.h > index 7cc6d90e66..11279d0c8f 100644 > --- a/worktree.h > +++ b/worktree.h > @@ -177,14 +177,6 @@ int other_head_refs(each_ref_fn fn, void *cb_data); > int is_worktree_being_rebased(const struct worktree *wt, const char *target); > int is_worktree_being_bisected(const struct worktree *wt, const char *target); > > -/* > - * Similar to git_path() but can produce paths for a specified > - * worktree instead of current one > - */ > -const char *worktree_git_path(const struct worktree *wt, > - const char *fmt, ...) > - __attribute__((format (printf, 2, 3))); > - > /* > * Return a refname suitable for access from the current ref store. > */ > -- > 2.45.2-445-g1b76f06508 Simple and straightforward, and the rationale makes sense to me.
Elijah Newren <newren@gmail.com> writes: > On Sat, Jun 8, 2024 at 6:39 PM Junio C Hamano <gitster@pobox.com> wrote: >> >> The definition of this function is in path.c but its declaration is >> in worktree.h, which is something unexpected. The function is >> explained as "Similar to git_path()"; declaring it next to where >> git_path() is declared would make more sense. >> >> Signed-off-by: Junio C Hamano <gitster@pobox.com> >> --- >> path.h | 9 +++++++++ >> revision.c | 1 + >> worktree.h | 8 -------- >> 3 files changed, 10 insertions(+), 8 deletions(-) > > Simple and straightforward, and the rationale makes sense to me. Thanks. It helped that there was only one customer that needed adjustment. Will merge to 'next'.
diff --git a/path.h b/path.h index c3bc8617bd..a6f0b70692 100644 --- a/path.h +++ b/path.h @@ -4,6 +4,7 @@ struct repository; struct strbuf; struct string_list; +struct worktree; /* * The result to all functions which return statically allocated memory may be @@ -81,6 +82,14 @@ void strbuf_repo_git_path(struct strbuf *sb, const char *git_path(const char *fmt, ...) __attribute__((format (printf, 1, 2))); +/* + * Similar to git_path() but can produce paths for a specified + * worktree instead of current one + */ +const char *worktree_git_path(const struct worktree *wt, + const char *fmt, ...) + __attribute__((format (printf, 2, 3))); + /* * Return a path into the main repository's (the_repository) git directory. */ diff --git a/revision.c b/revision.c index 7ddf0f151a..09024cf4aa 100644 --- a/revision.c +++ b/revision.c @@ -29,6 +29,7 @@ #include "bisect.h" #include "packfile.h" #include "worktree.h" +#include "path.h" #include "read-cache.h" #include "setup.h" #include "sparse-index.h" diff --git a/worktree.h b/worktree.h index 7cc6d90e66..11279d0c8f 100644 --- a/worktree.h +++ b/worktree.h @@ -177,14 +177,6 @@ int other_head_refs(each_ref_fn fn, void *cb_data); int is_worktree_being_rebased(const struct worktree *wt, const char *target); int is_worktree_being_bisected(const struct worktree *wt, const char *target); -/* - * Similar to git_path() but can produce paths for a specified - * worktree instead of current one - */ -const char *worktree_git_path(const struct worktree *wt, - const char *fmt, ...) - __attribute__((format (printf, 2, 3))); - /* * Return a refname suitable for access from the current ref store. */
The definition of this function is in path.c but its declaration is in worktree.h, which is something unexpected. The function is explained as "Similar to git_path()"; declaring it next to where git_path() is declared would make more sense. Signed-off-by: Junio C Hamano <gitster@pobox.com> --- path.h | 9 +++++++++ revision.c | 1 + worktree.h | 8 -------- 3 files changed, 10 insertions(+), 8 deletions(-)