Configuration Information:
Machine: i686
OS: cygwin
Compiler: gcc-4
Compilation CFLAGS: -DPROGRAM='bash.exe' -DCONF_HOSTTYPE='i686'
-DCONF_OSTYPE='cygwin' -DCONF_MACHTYPE='i686-pc-cygwin'
-DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash'
-DSHELL -DHAVE_CONFIG_H -DRECYCLES_PIDS -I.
-I/usr/src/bash-3.2.51-24/src/bash-3.2
-I/usr/src/bash-3.2.51-24/src/bash-3.2/include
-I/usr/src/bash-3.2.51-24/src/bash-3.2/lib -O2 -pipe
uname output: CYGWIN_NT-5.1 wron-ibobyr 1.7.7(0.230/5/3) 2010-08-31
09:58 i686 Cygwin
Machine Type: i686-pc-cygwin
Bash Version: 3.2
Patch Level: 51
Release Status: release
Description:
I see this problem only with gitk (that is a TCL script). It
appeared about a couple of month ago. I update all the packages in my
Cygwin installation almost weekly. It is probably possible to figure
out which bash and/or gitk update was the one that introduced the
problem but I did not do it yet.
When I do "gitk &" upon gitk exit the parent bash process
terminates as well.
When I do "(gitk &)" it works fine. There does not seem to be any
crash dumps. But sometimes bash outputs "Logout" before it exits just
as if I would press ^D on prompt. I have tried putting "gitk &" call
into a script and adding traps for all possible signals but none seemed
to be fired.
You do not have to be in a directory that is a Git repository.
It may be a Cygwin specific problem. Approximately at the time the
problem appeared cygwin.dll was also updated.
I hope that maybe someone with more knowledge in the relevant areas
may suggest a simpler test case and/or a direction to search for a
simpler test case as using whole gitk that is a big TCL script. By the
way "info patchlevel" on my Cygwin TCL says "8.4.1"
Repeat-By:
1. gitk &
2. If you are not in a Git repository just close the dialog by
selecting "OK" otherwise close the gitk window.
3. The parent bash exits.
Fix:
Running gitk in a subshell works fine.