[Python-Dev] Re: [Python-checkins] python/dist/src/Lib/test test_signal.py,1.9,1.10

Michael Hudson mwh@python.net
30 May 2002 10:03:07 +0100


Andrew MacIntyre <andymac@bullseye.apana.org.au> writes:

> On Mon, 27 May 2002 mwh@users.sourceforge.net wrote:
> 
> > Update of /cvsroot/python/python/dist/src/Lib/test
> > In directory usw-pr-cvs1:/tmp/cvs-serv24806/Lib/test
> >
> > Modified Files:
> > 	test_signal.py
> > Log Message:
> > This is patch
> >
> > [ 559250 ] more POSIX signal stuff
> >
> > Adds support (and docs and tests and autoconfery) for posix signal
> > mask handling -- sigpending, sigprocmask and sigsuspend.
> 
> Since this batch of checkins, my FreeBSD autobuilder is failing

Oh, um, good.

> test_socket:
>   test test_signal failed -- HUP not pending
> 
> Running the test with -v yields:
> test_signal
> + sleep 2
> starting pause() loop...
> call pause()...
> + kill -5 33123
> + sleep 2
> handlerA (5, <frame object at 0x8163e0c>)
> pause() returned
> call pause()...
> + kill -2 33123
> + sleep 2
> handlerB (2, <frame object at 0x8163e0c>)
> HandlerBCalled exception caught
> call pause()...
> + kill -3 33123
> KeyboardInterrupt (assume the alarm() went off)
> blocking SIGHUP
> sending SIGHUP
> test test_signal failed -- HUP not pending
> 1 test failed:
>     test_signal
> 
> 
> I found the following (apparently) signal related items in the autoconf
> generated pyconfig.h:
> /* Define to 1 if you have the <signal.h> header file. */
> #define HAVE_SIGNAL_H 1
> 
> /* Define to 1 if you have the `sigprocmask' function. */
> #define HAVE_SIGPROCMASK 1

The above tests wouldn't have run without this symbol being defined
(it's the new one).

> /* Define to 1 if you have the `sigrelse' function. */
> /* #undef HAVE_SIGRELSE */
> 
> {...}
> 
> /* Define as the return type of signal handlers (`int' or `void'). */
> #define RETSIGTYPE void
> 
> 
> Any hints about where to start looking?
> (I'm not au fait with signal() magic :-()

Let me try playing on the sf compile farm first.

Cheers,
M.