Author: Armin Rigo <[email protected]>
Branch: py3.5-eintr-pep475
Changeset: r88861:5772ffc179ab
Date: 2016-12-03 18:22 +0100
http://bitbucket.org/pypy/pypy/changeset/5772ffc179ab/
Log: last os function
diff --git a/pypy/module/posix/interp_posix.py
b/pypy/module/posix/interp_posix.py
--- a/pypy/module/posix/interp_posix.py
+++ b/pypy/module/posix/interp_posix.py
@@ -1306,12 +1306,16 @@
Wait for completion of a given child process.
"""
- try:
- pid, status = os.waitpid(pid, options)
- except OSError as e:
- raise wrap_oserror(space, e)
+ while True:
+ try:
+ pid, status = os.waitpid(pid, options)
+ break
+ except OSError as e:
+ wrap_oserror(space, e, eintr_retry=True)
return space.newtuple([space.wrap(pid), space.wrap(status)])
+# missing: waitid()
+
@unwrap_spec(status=c_int)
def _exit(space, status):
os._exit(status)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit