[pypy-commit] pypy refactor-buffer-api: fix cffi MiniBuffer setslice exception type
bdkearns
noreply at buildbot.pypy.org
Thu Apr 24 10:17:22 CEST 2014
Author: Brian Kearns <bdkearns at gmail.com>
Branch: refactor-buffer-api
Changeset: r70926:efb387f6f091
Date: 2014-04-24 04:16 -0400
http://bitbucket.org/pypy/pypy/changeset/efb387f6f091/
Log: fix cffi MiniBuffer setslice exception type
diff --git a/pypy/module/_cffi_backend/cbuffer.py b/pypy/module/_cffi_backend/cbuffer.py
--- a/pypy/module/_cffi_backend/cbuffer.py
+++ b/pypy/module/_cffi_backend/cbuffer.py
@@ -1,4 +1,4 @@
-from pypy.interpreter.error import oefmt
+from pypy.interpreter.error import oefmt, OperationError
from pypy.interpreter.gateway import unwrap_spec, interp2app
from pypy.interpreter.typedef import TypeDef, make_weakref_descr
from pypy.module._cffi_backend import cdataobj, ctypeptr, ctypearray
@@ -47,6 +47,14 @@
W_Buffer.__init__(self, buffer)
self.keepalive = keepalive
+ def descr_setitem(self, space, w_index, w_obj):
+ try:
+ W_Buffer.descr_setitem(self, space, w_index, w_obj)
+ except OperationError as e:
+ if e.match(space, space.w_TypeError):
+ e.w_type = space.w_ValueError
+ raise
+
MiniBuffer.typedef = TypeDef(
"buffer",
__module__ = "_cffi_backend",
More information about the pypy-commit
mailing list