X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=mg.c;h=b9b2ca288ab704817f719e1653fe8f348d5e37fe;hb=5b6782b28b8a9d505447276bdd3de3a802f641dd;hp=47d9cb437c71d5dd1bd1112a37296a5f4b6ae5f2;hpb=b54fc2b60bc365faffaf24860c5306add8af3c87;p=p5sagit%2Fp5-mst-13.2.git diff --git a/mg.c b/mg.c index 47d9cb4..b9b2ca2 100644 --- a/mg.c +++ b/mg.c @@ -1278,6 +1278,19 @@ Perl_magic_clearsig(pTHX_ SV *sv, MAGIC *mg) return 0; } +/* + * The signal handling nomenclature has gotten a bit confusing since the advent of + * safe signals. S_raise_signal only raises signals by analogy with what the + * underlying system's signal mechanism does. It might be more proper to say that + * it defers signals that have already been raised and caught. + * + * PL_sig_pending and PL_psig_pend likewise do not track signals that are pending + * in the sense of being on the system's signal queue in between raising and delivery. + * They are only pending on Perl's deferral list, i.e., they track deferred signals + * awaiting delivery after the current Perl opcode completes and say nothing about + * signals raised but not yet caught in the underlying signal implementation. + */ + #ifndef SIG_PENDING_DIE_COUNT # define SIG_PENDING_DIE_COUNT 120 #endif