]> git.ipfire.org Git - thirdparty/git.git/commit
t7300: work around platform-specific behaviour with long paths on MinGW
authorPatrick Steinhardt <ps@pks.im>
Wed, 9 Oct 2024 13:25:18 +0000 (15:25 +0200)
committerJohannes Schindelin <johannes.schindelin@gmx.de>
Wed, 30 Oct 2024 16:38:35 +0000 (17:38 +0100)
commit83b08eb19f05710a92d565124606dcaf68bcc68b
tree9455e55d98f5fb3a68e46571a58d055956881617
parent7e6073d27083054773f3c3b21a608f400cf7348d
t7300: work around platform-specific behaviour with long paths on MinGW

Windows by default has a restriction in place to only allow paths up to
260 characters. This restriction can nowadays be lifted by setting a
registry key, but is still active by default.

In t7300 we have one test that exercises the behaviour of git-clean(1)
with such long paths. Interestingly enough, this test fails on my system
that uses Windows 10 with mingw-w64 installed via MSYS2: instead of
observing ENAMETOOLONG, we observe ENOENT. This behaviour is consistent
across multiple different environments I have tried.

I cannot say why exactly we observe a different error here, but I would
not be surprised if this was either dependent on the Windows version,
the version of MinGW, the current working directory of Git or any kind
of combination of these.

Work around the issue by handling both errors.

[Backported from 106834e34a2 (t7300: work around platform-specific
behaviour with long paths on MinGW, 2024-10-09).]

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
t/t7300-clean.sh