diff mbox series

worktree_git_path(): move the declaration to path.h

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

Commit Message

Junio C Hamano June 8, 2024, 6:39 p.m. UTC
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(-)

Comments

Elijah Newren June 14, 2024, 6:50 p.m. UTC | #1
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.
Junio C Hamano June 14, 2024, 7:21 p.m. UTC | #2
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 mbox series

Patch

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.
  */