On Fri, Dec 21, 2001 at 11:09:05AM +0100, Michael Rumpf wrote: > Am I the only one having problems with this, or is this simply the wrong > list to ask a question about the Cygwin bash... ??
Nah, this is the right list. Nobody has an answer, though. Did you try `CYGWIN=... tty ...' setting? Corinna > > Michael > > ----- Original Message ----- > From: "Michael Rumpf" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Thursday, December 20, 2001 10:11 AM > Subject: Re: bash/cmd CTRL-C problem... > > > > Hi, > > > > sorry for following up myself, but I found out that Cygwin equally handles > > CTRL-BREAK and CTRL-C by sending a SIGINT to the process. > > See http://groups.yahoo.com/group/gnu-win32/message/27643 (last sentence). > > This seems to be the source of the problem. > > CTRL-BREAK under the cmd shell terminates the process after handling the > > signal without further executing any code. The bad thing is that under > bash > > the same behaviour follows from pressing CTRL-BREAK _and_ CTRL-C !! > > > > If this is a design issue, can someone please explain what the reasons > > are... > > > > We have an application that forks other processes. The main thread is > > waiting for the signal handler to return in order to cleanly stop the > child > > processes. By just stopping the parent process the child processes keep > > running and I have to kill them manually each time I press CTRL-C. The > same > > application is working fine under windows cmd shell and bash under Linux , > > HP-UX 10/11, AIX4.x, and SunOS 2.5+... > > > > Please help, I don't want to use the stupid windows cmd shell.... ;-) > > > > Michael > > > > ----- Original Message ----- > > From: "Michael Rumpf" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Thursday, December 20, 2001 7:47 AM > > Subject: bash/cmd CTRL-C problem... > > > > > > > Hi, > > > > > > I'm new to the list and I don't know if this problem is already solved, > > but > > > I couldn't find a hint neither on the archives nor on the FAQ or > somewhere > > > else on the net. > > > > > > My problem is related to bash/cmd and signal handling. > > > In my app I installed a signal handler for SIGINT. The app is going into > a > > > wait loop and waiting for the exit flag from the signal handler to be > set. > > > > > > When pressing CTRL-C in the windows cmd shell the application continues > > > normally after the signal handler has been caught. Under bash the signal > > > handler is also correctly called, but after that the app is exiting > > > immediatly, i.e. not continuing with the code. > > > Here is the source: > > > > > > > > > //////////////////////////////////////////////////////////////////////////// > > > ///////////////// > > > #include <windows.h> > > > #include <stdio.h> > > > #include <signal.h> > > > > > > bool loop = true; > > > > > > extern "C" void signalHandler(int sig) > > > { > > > switch( sig ) > > > { > > > case SIGINT: // == 2 > > > printf("SIGINT=%d\n",sig); > > > break; > > > default: > > > printf("default=%d\n",sig); > > > break; > > > }; > > > loop=false; > > > } > > > > > > int main(int argc, char* argv[]) > > > { > > > if (signal( SIGINT , signalHandler ) == SIG_ERR) > > > return -1; > > > printf("### ctrlbreak: Waiting now...\n"); > > > while(loop) > > > Sleep ((DWORD) 1000) ; > > > printf("### ctrlbreak: Finished waiting now...\n"); > > > return 0; > > > } > > > > > > //////////////////////////////////////////////////////////////////////////// > > > ///////////////// > > > > > > Here the the output of the app under Win2K/bash: > > > // bash 2.05a-2 > > > $ ./ctrlbreak.exe > > > ### ctrlbreak: Waiting now... > > > SIGINT=2 > > > > > > > > > // GNU bash, version 2.02.1(2)-release (i586-pc-cygwin32) B20.1 > > > bash-2.02$ ./ctrlbreak > > > ### ctrlbreak: Waiting now... > > > SIGINT=2 > > > > > > // cmd.exe Win2k SP2 > > > ### ctrlbreak: Waiting now... > > > SIGINT=2 > > > ### ctrlbreak: Finished waiting now... > > > > > > > > > You can see that under the cmd shell the text "Finished waiting now..." > is > > > printed which does not come out under the bash. The app is not linked > > > against any cygwin library. It is a plain VC++ console application. But > > when > > > I compile with gcc from the cygwin package I have the same result. > > > Any hint would be greatly appreciated... > > > > > > Michael > > > > > > PS: I just downloaded the latest stable version 1.3.6 today... > > > > > > > > > > > > -- > > > Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple > > > Bug reporting: http://cygwin.com/bugs.html > > > Documentation: http://cygwin.com/docs.html > > > FAQ: http://cygwin.com/faq/ > > > > > > > > > > > > -- > > Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple > > Bug reporting: http://cygwin.com/bugs.html > > Documentation: http://cygwin.com/docs.html > > FAQ: http://cygwin.com/faq/ > > > > > -- > Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple > Bug reporting: http://cygwin.com/bugs.html > Documentation: http://cygwin.com/docs.html > FAQ: http://cygwin.com/faq/ -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Developer mailto:[EMAIL PROTECTED] Red Hat, Inc. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/