delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2001/05/19/10:51:45

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
From: Jason Moxham <J DOT L DOT Moxham AT maths DOT soton DOT ac DOT uk>
Message-Id: <200105191450.PAA05445@malus.maths.soton.ac.uk>
Subject: spawnl and signals
To: cygwin AT cygwin DOT com
Date: Sat, 19 May 2001 15:50:37 +0100 (BST)
X-Mailer: ELM [version 2.5 PL2]
MIME-Version: 1.0

If you compile and run program below with latest cygwin you get the
expected behavour

// This is jay.exe

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

volatile int gotsignal=0;

void	sighandler(int signum){gotsignal=signum;return;}

int	main(void)
{int a;

printf("in jay.exe\n");fflush(0);
signal(SIGINT,sighandler);
do{
if(gotsignal!=0)
  {printf("got signal %d\n",gotsignal);
   fflush(0);
   gotsignal=0;break;}
}while(1);
return 0;}

However if you compile and run the program below which calls the above
program then the ctrl-C signal is never detected

// this is jay1.exe

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

volatile int gotsignal=0;

void	sighandler(int signum){gotsignal=signum;return;}

int	main(void)
{int a;

spawnl(_P_NOWAIT,"./jay.exe","./jay.exe",0);
//execl("./jay.exe","./jay.exe",0);

return 0;}

this is running under Window 98SE under a DOS prompt
changing the spawnl to a execl makes it work as it should


Jason Moxham
J DOT L DOT Moxham AT maths DOT soton DOT ac DOT uk


--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019