[pypy-commit] pypy rw-PyString_AS_STRING: move pto.c_tp_itemsize assignment for str type to earlier point in cpyext initialization code
mattip
pypy.commits at gmail.com
Thu Jun 16 12:11:39 EDT 2016
Author: Matti Picus <matti.picus at gmail.com>
Branch: rw-PyString_AS_STRING
Changeset: r85192:d2e03a332a5b
Date: 2016-06-16 19:05 +0300
http://bitbucket.org/pypy/pypy/changeset/d2e03a332a5b/
Log: move pto.c_tp_itemsize assignment for str type to earlier point in
cpyext initialization code
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
@@ -1202,8 +1202,6 @@
cpyext_type_init = self.cpyext_type_init
self.cpyext_type_init = None
for pto, w_type in cpyext_type_init:
- if space.is_w(w_type, space.w_str):
- pto.c_tp_itemsize = 1
finish_type_1(space, pto)
finish_type_2(space, pto, w_type)
diff --git a/pypy/module/cpyext/typeobject.py b/pypy/module/cpyext/typeobject.py
--- a/pypy/module/cpyext/typeobject.py
+++ b/pypy/module/cpyext/typeobject.py
@@ -657,6 +657,8 @@
pto.c_tp_dealloc = llhelper(
subtype_dealloc.api_func.functype,
subtype_dealloc.api_func.get_wrapper(space))
+ if space.is_w(w_type, space.w_str):
+ pto.c_tp_itemsize = 1
# buffer protocol
setup_buffer_procs(space, w_type, pto)
More information about the pypy-commit
mailing list