Author: Armin Rigo <[email protected]>
Branch: 
Changeset: r68842:9bfd0a649773
Date: 2014-01-22 13:10 +0100
http://bitbucket.org/pypy/pypy/changeset/9bfd0a649773/

Log:    Fix (I think): when calling C functions that call back some RPython
        functions, never use _nowrapped=True. This breaks e.g. asmgcc's
        stack tracing and triggers an assertion in debug builds. Instead, I
        think that just saying "releasegil=False" is what we need here,
        according to c23cd52909fb.

diff --git a/pypy/module/cpyext/api.py b/pypy/module/cpyext/api.py
--- a/pypy/module/cpyext/api.py
+++ b/pypy/module/cpyext/api.py
@@ -692,11 +692,11 @@
     else:
         prefix = 'cpyexttest'
     init_buffer = rffi.llexternal('_%s_init_bufferobject' % prefix, [], 
lltype.Void,
-                                  compilation_info=eci, _nowrapper=True)
+                                  compilation_info=eci, releasegil=False)
     init_pycobject = rffi.llexternal('_%s_init_pycobject' % prefix, [], 
lltype.Void,
-                                     compilation_info=eci, _nowrapper=True)
+                                     compilation_info=eci, releasegil=False)
     init_capsule = rffi.llexternal('_%s_init_capsule' % prefix, [], 
lltype.Void,
-                                   compilation_info=eci, _nowrapper=True)
+                                   compilation_info=eci, releasegil=False)
     INIT_FUNCTIONS.extend([
         lambda space: init_buffer(),
         lambda space: init_pycobject(),
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to