Message234768
| Author |
serhiy.storchaka |
| Recipients |
ethan.furman, giampaolo.rodola, gvanrossum, neologix, python-dev, serhiy.storchaka, vstinner |
| Date |
2015年01月26日.18:59:06 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1422298747.75.0.441495217843.issue21076@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
And more, as far as standard signal handler is tested for identity, signal.SIG_DFL and _signal.SIG_DFL should be the same object. Current code works only due to coincidence of two circumstances:
1) Small integers are cached in CPython.
2) SIG_DFL and SIG_IGN are small integers on common platforms.
When small integer caching is disabled (NSMALLPOSINTS == NSMALLPOSINTS == 0) or when platform depended macros SIG_DFL and SIG_IGN are not small integers, the signal module will mystically fail.
The simplest way to solve this issue is to backout turning SIG_DFL and SIG_IGN into enums. |
|