54 lines
1.7 KiB
Diff
54 lines
1.7 KiB
Diff
|
diff --git pypy3-v5.5.0-src/lib-python/3/test/regrtest.py pypy3-v5.5.0-src/lib-python/3/test/regrtest.py-new
|
||
|
index 8d18a9297a..e99322ebe1 100755
|
||
|
--- pypy3-v5.5.0-src/lib-python/3/test/regrtest.py
|
||
|
+++ pypy3-v5.5.0-src/lib-python/3/test/regrtest.py-new
|
||
|
@@ -169,7 +169,6 @@ option '-uall,-gui'.
|
||
|
import importlib
|
||
|
|
||
|
import builtins
|
||
|
-import faulthandler
|
||
|
import getopt
|
||
|
import io
|
||
|
import json
|
||
|
@@ -197,6 +196,10 @@ try:
|
||
|
import multiprocessing.process
|
||
|
except ImportError:
|
||
|
multiprocessing = None
|
||
|
+try:
|
||
|
+ import faulthandler
|
||
|
+except ImportError:
|
||
|
+ faulthandler = None
|
||
|
|
||
|
|
||
|
# Some times __path__ and __file__ are not absolute (e.g. while running from
|
||
|
@@ -283,17 +286,18 @@ def main(tests=None, testdir=None, verbose=0, quiet=False,
|
||
|
on the command line.
|
||
|
"""
|
||
|
|
||
|
- # Display the Python traceback on fatal errors (e.g. segfault)
|
||
|
- faulthandler.enable(all_threads=True)
|
||
|
-
|
||
|
- # Display the Python traceback on SIGALRM or SIGUSR1 signal
|
||
|
- signals = []
|
||
|
- if hasattr(signal, 'SIGALRM'):
|
||
|
- signals.append(signal.SIGALRM)
|
||
|
- if hasattr(signal, 'SIGUSR1'):
|
||
|
- signals.append(signal.SIGUSR1)
|
||
|
- for signum in signals:
|
||
|
- faulthandler.register(signum, chain=True)
|
||
|
+ if faulthandler:
|
||
|
+ # Display the Python traceback on fatal errors (e.g. segfault)
|
||
|
+ faulthandler.enable(all_threads=True)
|
||
|
+
|
||
|
+ # Display the Python traceback on SIGALRM or SIGUSR1 signal
|
||
|
+ signals = []
|
||
|
+ if hasattr(signal, 'SIGALRM'):
|
||
|
+ signals.append(signal.SIGALRM)
|
||
|
+ if hasattr(signal, 'SIGUSR1'):
|
||
|
+ signals.append(signal.SIGUSR1)
|
||
|
+ for signum in signals:
|
||
|
+ faulthandler.register(signum, chain=True)
|
||
|
|
||
|
replace_stdout()
|
||
|
|