Author: Wim Lavrijsen <[email protected]>
Branch: cppyy-packaging
Changeset: r94855:0097f52d422a
Date: 2018-07-12 19:54 -0700
http://bitbucket.org/pypy/pypy/changeset/0097f52d422a/
Log: do not unwrap assignable in setitem until call with ref-return is
done
diff --git a/pypy/module/_cppyy/executor.py b/pypy/module/_cppyy/executor.py
--- a/pypy/module/_cppyy/executor.py
+++ b/pypy/module/_cppyy/executor.py
@@ -98,10 +98,10 @@
def __init__(self, space, extra):
Executor.__init__(self, space, extra)
self.do_assign = False
- self.item = rffi.cast(self.c_type, 0)
+ self.w_item = space.w_None
def set_item(self, space, w_item):
- self.item = self._unwrap_object(space, w_item)
+ self.w_item = w_item
self.do_assign = True
#def _wrap_object(self, space, obj):
@@ -109,7 +109,7 @@
def _wrap_reference(self, space, rffiptr):
if self.do_assign:
- rffiptr[0] = self.item
+ rffiptr[0] = self._unwrap_object(space, self.w_item)
self.do_assign = False
return self._wrap_object(space, rffiptr[0]) # all paths, for rtyper
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit