This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

SIGINT, bash and non-cygwin apps



Hi,

bog standard B20.1 + egcs-1.1.1 - given the following program

#include <signal.h>
#include <stdio.h>

void handler()
{
 printf("SIGINT received\n");
 signal(SIGINT,handler);
}

int
main()
{
 signal(SIGINT,handler);
 for(;;);
}

compile up mingw and cygwin versions of this

sa$ gcc -v
Reading specs from
C:\Cygnus\cygwin-b20\H-i586-cygwin32\lib\gcc-lib\i586-cygwin32/egcs-2.91.60/specs
gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release)
sa$ uname -a
CYGWIN_NT-4.0 SARK 20.1 (0.3/1/1) 1998-12-3 20:39:18 i686 unknown
sa$ gcc -o main-cygwin tst.c
sa$ gcc -o main-mingw  tst.c -mno-cygwin

If you run 'main-cygwin' under bash everything is cool, SIGINT is
repeatedly caught. If you run `main-mingw' though, Ctrl+C delivers the
signal first time around, but then terminates the application (without
signalling this to the app, as far as I can gather).

Running both versions under cmd.exe works as expected - anyone know
what's the root cause & if there's a work-around or fix for this?

thanks,
--sigbjorn

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]