git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] merge-file: correctly find files when called in subdir

From
Bert Wesarg <bert.wesarg@googlemail.com>
Date
Oct 16, 2010, 13:30 UTC
Message-ID
<AANLkTimzuF3Ku_Jjnq0qKFtrDfAfz8YxChomZr8+Shm1@mail.gmail.com>
In-Reply-To
<33ab2f03ed522e1a9be202017b7bbfe35e6d7a99.1287228637.git.trast@student.ethz.ch>
On Sat, Oct 16, 2010 at 13:33, Thomas Rast <trast@student.ethz.ch> wrote:
Show 33 quoted lines
> Since b541248 (merge.conflictstyle: choose between "merge" and "diff3
> -m" styles, 2008-08-29), git-merge-file uses setup_directory_gently(),
> thus cd'ing around to find any possible config files to use.
>
> This broke merge-file when it is called from within a subdirectory of
> a repository, and the arguments are all relative paths.
>
> Fix by prepending the prefix, as passed down from the main git
> executable, if there is any.
>
> Signed-off-by: Thomas Rast <trast@student.ethz.ch>
> ---
>  builtin/merge-file.c  |   11 ++++++++++-
>  t/t6023-merge-file.sh |    8 ++++++++
>  2 files changed, 18 insertions(+), 1 deletions(-)
>
> diff --git a/builtin/merge-file.c b/builtin/merge-file.c
> index b6664d4..b873fee 100644
> --- a/builtin/merge-file.c
> +++ b/builtin/merge-file.c
> @@ -65,10 +66,18 @@ int cmd_merge_file(int argc, const char **argv, const char *prefix)
>                                     "%s\n", strerror(errno));
>        }
>
> +       if (prefix)
> +               prefixlen = strlen(prefix);
> +
>        for (i = 0; i < 3; i++) {
> +               const char *name;
> +               if (prefix)
> +                       name = prefix_filename(prefix, prefixlen, argv[i]);
> +               else
> +                       name = argv[i];
I think you can safe this condition, if you set prefixlen to 0.
Bert
Previous: Thomas RastNext: Jonathan Nieder
Message 2 of 10 in “merge-file: correctly find files when called in subdir”
  1. merge-file: correctly find files when called in subdirThomas Rast, Oct 16, 2010
  2. Bert WesargOct 16, 2010
  3. Jonathan NiederOct 17, 2010
  4. Thomas RastOct 17, 2010
  5. Jonathan NiederOct 17, 2010
  6. 1/2 prefix_filename(): safely handle the case where pfx_len=0Thomas Rast, Oct 17, 2010
  7. 2/2 merge-file: correctly find files when called in subdirThomas Rast, Oct 17, 2010
  8. Jonathan NiederOct 17, 2010
  9. Johannes SixtOct 18, 2010
  10. Jonathan NiederOct 17, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.