diff options
author | Nick Ing-Simmons <nik@tiuk.ti.com> | 2002-01-11 17:49:39 +0000 |
---|---|---|
committer | Nick Ing-Simmons <nik@tiuk.ti.com> | 2002-01-11 17:49:39 +0000 |
commit | 1018e26f1c13277648057b08a7b77db44ebc46fe (patch) | |
tree | cf4732d6b57057c8a413df56f7355011bfcbd185 /mg.c | |
parent | 85439dabe787f501fcc574bbf8ea205f27e2943b (diff) | |
download | perl-1018e26f1c13277648057b08a7b77db44ebc46fe.tar.gz |
A mostly-stable version of "new" Win32 signal/kill support.
p4raw-id: //depot/perlio@14192
Diffstat (limited to 'mg.c')
-rw-r--r-- | mg.c | 15 |
1 files changed, 8 insertions, 7 deletions
@@ -1073,7 +1073,9 @@ Perl_raise_signal(pTHX_ int sig) Signal_t Perl_csighandler(int sig) { -#ifndef PERL_OLD_SIGNALS +#ifdef PERL_GET_SIG_CONTEXT + dTHXa(PERL_GET_SIG_CONTEXT); +#else dTHX; #endif #ifdef FAKE_PERSISTENT_SIGNAL_HANDLERS @@ -2310,8 +2312,8 @@ static SV* sig_sv; Signal_t Perl_sighandler(int sig) { -#if defined(WIN32) && defined(PERL_IMPLICIT_CONTEXT) - dTHXa(PL_curinterp); /* fake TLS, because signals don't do TLS */ +#ifdef PERL_GET_SIG_CONTEXT + dTHXa(PERL_GET_SIG_CONTEXT); #else dTHX; #endif @@ -2324,10 +2326,6 @@ Perl_sighandler(int sig) U32 flags = 0; XPV *tXpv = PL_Xpv; -#if defined(WIN32) && defined(PERL_IMPLICIT_CONTEXT) - PERL_SET_THX(aTHX); /* fake TLS, see above */ -#endif - if (PL_savestack_ix + 15 <= PL_savestack_max) flags |= 1; if (PL_markstack_ptr < PL_markstack_max - 2) @@ -2481,3 +2479,6 @@ unwind_handler_stack(pTHX_ void *p) SvREFCNT_dec(sig_sv); #endif } + + + |