Thread (13 messages) 13 messages, 3 authors, 2025-04-01

Re: git v2.49.0 - gitk regression on Cygwin

From: Johannes Sixt <hidden>
Date: 2025-03-28 17:30:19

Am 28.03.25 um 13:34 schrieb Mark Levedahl:
gitk no longer works on Cygwin. This commit is in Junio's tree as part
of release v2.49.0, but I didn't trace to the specific merge commit.

The proximal issue is an endless loop caused by routine _which invoking
exec, which is now a wrapper that invokes _which, while the builtin exec
is renamed to real_exec.  This results in stack exhaustion.
Not good. Thanks for the report.
However, the above leaves code in place affecting path search on all
platforms without justification. The commit message references the TCL
man page for "exec", listing a number of directories (including the
current working directory) and file suffixes searched on the Windows
platform that could be problematic. However, that man page does not list
any such issues for other platforms. So, it appears the patch does not
address a known issue on Unix platforms, which includes Cygwin.

I believe the correct fix to 4cbe9e0e2 is limiting the override of exec
and open to Windows, and I also have a patch to do that rather than what
I show above. Let me know.
Indeed, it seems that this override is only needed on Windows. Dscho, is
there a non-obvious reason that 'exec' and 'open' are overridden on all
platforms?

-- Hannes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help