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

Re: [PATCH v2] t7450: inspect the correct path a broken code would write to

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 31, 2025, 18:45 UTC
Message-ID
<xmqqtt2sqjw6.fsf@gitster.g>
In-Reply-To
<pull.2022.v2.git.git.1753933780883.gitgitgadget@gmail.com>
"chenjianhu via GitGitGadget" <gitgitgadget@gmail.com> writes:
Somehow Justin and Kristoffer are missing from the Cc list.
Show 70 quoted lines
> From: chenjianhu <chenjianh@kylinos.cn>
>
> Prior to 05e9cd64 (config: quote values containing CR character,
> 2025-05-19), a repository can trick "clone --recurse-submodules"
> into running a post-checkout hook shipped with the project.  The
> test was written to make sure the trick would no longer run the
> hook with the fix in the commit.
>
> However, the test did not check for the path the hook would
> create; correct the path to the expected one if the bug were
> still with us.
>
> Signed-off-by: chenjianhu <chenjianhu@kylinos.cn>
> ---
>     modify the “foo" file path to "$PWD/bad-clone/sub/foo".
>     
>     cc: "Kristoffer Haugsbakk" kristofferhaugsbakk@fastmail.com cc: Justin
>     Tobler jltobler@gmail.com
>
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2022%2Fcjhxmx%2Fcjhxmx-git-test-v2
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2022/cjhxmx/cjhxmx-git-test-v2
> Pull-Request: https://github.com/git/git/pull/2022
>
> Range-diff vs v1:
>
>  1:  c2d1d8fe884 ! 1:  6434587a075 modify the “foo" file path to "$PWD/bad-clone/sub/foo".
>      @@
>        ## Metadata ##
>      -Author: 陈建虎 <chenjianhu@kylinos.cn>
>      +Author: chenjianhu <chenjianh@kylinos.cn>
>       
>        ## Commit message ##
>      -    modify the “foo" file path to "$PWD/bad-clone/sub/foo".
>      +    t7450: inspect the correct path a broken code would write to
>       
>      -    In the t7450-bad-git-dotfiles.sh, when post-checkout
>      -    is executed, the actual path where the foo file
>      -    is created should be "$PWD/bad-clone/sub/foo".
>      +    Prior to 05e9cd64 (config: quote values containing CR character,
>      +    2025-05-19), a repository can trick "clone --recurse-submodules"
>      +    into running a post-checkout hook shipped with the project.  The
>      +    test was written to make sure the trick would no longer run the
>      +    hook with the fix in the commit.
>      +
>      +    However, the test did not check for the path the hook would
>      +    create; correct the path to the expected one if the bug were
>      +    still with us.
>       
>           Signed-off-by: chenjianhu <chenjianhu@kylinos.cn>
>       
>
>
>  t/t7450-bad-git-dotfiles.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/t/t7450-bad-git-dotfiles.sh b/t/t7450-bad-git-dotfiles.sh
> index 14b5743b962..f512eed278c 100755
> --- a/t/t7450-bad-git-dotfiles.sh
> +++ b/t/t7450-bad-git-dotfiles.sh
> @@ -401,7 +401,7 @@ test_expect_success SYMLINKS,!WINDOWS,!MINGW 'submodule must not checkout into d
>  	git -C repo commit -m submodule &&
>  
>  	git -c protocol.file.allow=always clone --recurse-submodules repo bad-clone &&
> -	! test -f "$PWD/foo" &&
> +	! test -f "$PWD/bad-clone/sub/foo" &&
>  	test -f $(printf "bad-clone/sub\r/post-checkout")
>  '
>  
>
> base-commit: e813a0200a7121b97fec535f0d0b460b0a33356c
Previous: chenjianhu via GitGitGadgetNext: Justin Tobler
Message 7 of 8 in “modify the “foo" file path to "$PWD/bad-clone/sub/foo".”
  1. modify the “foo" file path to "$PWD/bad-clone/sub/foo".陈建虎 via GitGitGadget, Jul 30, 2025
  2. Kristoffer HaugsbakkJul 30, 2025
  3. Junio C HamanoJul 30, 2025
  4. Junio C HamanoJul 30, 2025
  5. Justin ToblerJul 30, 2025
  6. t7450: inspect the correct path a broken code would write tochenjianhu via GitGitGadget, Jul 31, 2025
  7. Junio C HamanoJul 31, 2025
  8. Justin ToblerAug 1, 2025

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.