Author: Armin Rigo <[email protected]>
Branch: py3.5
Changeset: r89910:d08bf476e7fc
Date: 2017-02-03 13:02 +0100
http://bitbucket.org/pypy/pypy/changeset/d08bf476e7fc/
Log: oops, fix
diff --git a/pypy/module/_multiprocessing/interp_semaphore.py
b/pypy/module/_multiprocessing/interp_semaphore.py
--- a/pypy/module/_multiprocessing/interp_semaphore.py
+++ b/pypy/module/_multiprocessing/interp_semaphore.py
@@ -15,6 +15,7 @@
from pypy.interpreter.typedef import GetSetProperty, TypeDef
RECURSIVE_MUTEX, SEMAPHORE = range(2)
+sys_platform = sys.platform
if sys.platform == 'win32':
from rpython.rlib import rwin32
@@ -331,6 +332,11 @@
rgc.add_memory_pressure(SEM_T_SIZE)
return sem
+ def reopen_semaphore(name):
+ sem = sem_open(name, 0, 0600, 0)
+ rgc.add_memory_pressure(SEM_T_SIZE)
+ return sem
+
def delete_semaphore(handle):
_sem_close_no_errno(handle)
@@ -523,10 +529,10 @@
def rebuild(space, w_cls, w_handle, kind, maxvalue, w_name):
name = space.str_or_None_w(w_name)
#
- if sys.platform != 'win32' and name is not None:
+ if sys_platform != 'win32' and name is not None:
# like CPython, in this case ignore 'w_handle'
try:
- handle = create_semaphore(space, name, 0, maxvalue)
+ handle = reopen_semaphore(name)
except OSError as e:
raise wrap_oserror(space, e)
else:
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit