diff options
author | Marius Gedminas <marius@gedmin.as> | 2019-06-27 15:50:27 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-27 15:50:27 +0300 |
commit | f5c811f06989b9282432c628bb445fd110608226 (patch) | |
tree | 2503ec75667fa0f9816e1d368b2dea080656f950 | |
parent | cd9691fd0665b7fec6b70ba7de87278c36986672 (diff) | |
parent | b7ee3d1e03d3c260cf8abdbdf49369c2cd50a0de (diff) | |
download | zope-proxy-f5c811f06989b9282432c628bb445fd110608226.tar.gz |
Merge pull request #31 from zopefoundation/fix-error-handling-in-tp_setattro
Fix error handling in the tp_setattro slot
-rw-r--r-- | CHANGES.rst | 5 | ||||
-rw-r--r-- | src/zope/proxy/_zope_proxy_proxy.c | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/CHANGES.rst b/CHANGES.rst index 0bca75d..d31cfee 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -4,7 +4,10 @@ Changes 4.3.2 (unreleased) ------------------ -- Nothing changed yet. +- Fix error handling in ``ProxyBase.__setattr__``: any the exception raised by + ``PyString_AsString``/``PyUnicode_AsUTF8`` would be silently swallowed up + and ignored. See `issue 31 + <https://github.com/zopefoundation/zope.proxy/issues/31>`_. 4.3.1 (2018-08-09) diff --git a/src/zope/proxy/_zope_proxy_proxy.c b/src/zope/proxy/_zope_proxy_proxy.c index b64874a..572db97 100644 --- a/src/zope/proxy/_zope_proxy_proxy.c +++ b/src/zope/proxy/_zope_proxy_proxy.c @@ -312,7 +312,7 @@ wrap_setattro(PyObject *self, PyObject *name, PyObject *value) #endif if (name_as_string == NULL) { - return NULL; + goto finally; } descriptor = WrapperType_Lookup(self->ob_type, name); |