simple-ipc: work around issues with Cygwin's Unix socket emulation
commit974ef7ced24a782ff32b2248103e25a397276f36
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Wed, 10 Nov 2021 11:09:10 +0000 (10 11:09 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 10 Nov 2021 17:12:19 +0000 (10 09:12 -0800)
tree2aa2da070d0b29bf28ffb3b257e24bfe477d0dbb
parent6c220937e2b26d85920bf2d38ff2464a0d57fd6b
simple-ipc: work around issues with Cygwin's Unix socket emulation

Cygwin emulates Unix sockets by writing files with custom contents and
then marking them as system files.

The tricky problem is that while the file is written and its `system`
bit is set, it is still identified as a file. This caused test failures
when Git is too fast looking for the Unix sockets and then complains
that there is a plain file in the way.

Let's work around this by adding a delayed retry loop, specifically for
Cygwin.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Tested-by: Ramsay Jones <ramsay@ramsayjones.plus.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
compat/simple-ipc/ipc-unix-socket.c