patcht1400: have fifo test clean after itself
2 messages between Jun 10, 2026 and Jun 11, 2026, from Junio C Hamano, Patrick Steinhardt.
Plain Markdown or JSON for tools and agents. Diffs are folded; open one to read it.
Junio C HamanoJun 10, 2026, 21:39 UTC on loreOne test in this script creates a pair of FIFOs, "in" and "out", that are named so generically that later tests may be tempted to use them. By the time those later tests run a command with its output redirected to the file (e.g., "git foobar >out"), however, nobody is reading from the lingering FIFO, and the test gets blocked forever.
Clean them up when the test finishes.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
t/t1400-update-ref.sh | 1 +
1 file changed, 1 insertion(+)
Show changes to t/t1400-update-ref.sh +1 −0
diff --git a/t/t1400-update-ref.sh b/t/t1400-update-ref.sh
index db7f5444da..477af544bc 100755
--- a/t/t1400-update-ref.sh
+++ b/t/t1400-update-ref.sh
@@ -1610,6 +1610,7 @@ test_expect_success 'transaction cannot restart ongoing transaction' '
'
test_expect_success PIPE 'transaction flushes status updates' '
+ test_when_finished "rm -f in out" &&
mkfifo in out &&
(git update-ref --stdin <in >out &) &&
--
2.54.0-615-g639a4a7340
Re: [PATCH] t1400: have fifo test clean after itself
On Wed, Jun 10, 2026 at 02:39:08PM -0700, Junio C Hamano wrote:
Show 24 quoted lines
> One test in this script creates a pair of FIFOs, "in" and "out",
> that are named so generically that later tests may be tempted to use
> them. By the time those later tests run a command with its output
> redirected to the file (e.g., "git foobar >out"), however, nobody is
> reading from the lingering FIFO, and the test gets blocked forever.
>
> Clean them up when the test finishes.
>
> Signed-off-by: Junio C Hamano <gitster@pobox.com>
> ---
> t/t1400-update-ref.sh | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/t/t1400-update-ref.sh b/t/t1400-update-ref.sh
> index db7f5444da..477af544bc 100755
> --- a/t/t1400-update-ref.sh
> +++ b/t/t1400-update-ref.sh
> @@ -1610,6 +1610,7 @@ test_expect_success 'transaction cannot restart ongoing transaction' '
> '
>
> test_expect_success PIPE 'transaction flushes status updates' '
> + test_when_finished "rm -f in out" &&
> mkfifo in out &&
> (git update-ref --stdin <in >out &) &&
I'd expect that such a test that tried to reuse the sockets would probably break quite obviously, but I guess you never really know. In any case, it doesn't hurt to clean up after the test.
Thanks!
Patrick