Re: git v2.49.0 - gitk regression on Cygwin
- From
Johannes Sixt <j6t@kdbg.org>
- Date
- Mar 28, 2025, 17:30 UTC
- Message-ID
- <7b4149e1-44f8-44d4-89f8-647734f9e674@kdbg.org>
- In-Reply-To
- <23088b7d-ed98-4b78-bb9a-c3674da1117d@gmail.com>
Am 28.03.25 um 13:34 schrieb Mark Levedahl:
Show 6 quoted lines
> 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.
Show 11 quoted lines
> 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