diff options
Diffstat (limited to 'Modules/_ssl.c')
-rw-r--r-- | Modules/_ssl.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/Modules/_ssl.c b/Modules/_ssl.c index 67402fe..8818d26 100644 --- a/Modules/_ssl.c +++ b/Modules/_ssl.c @@ -1589,8 +1589,7 @@ static int PySSL_set_context(PySSLSocket *self, PyObject *value, return -1; #else Py_INCREF(value); - Py_DECREF(self->ctx); - self->ctx = (PySSLContext *) value; + Py_SETREF(self->ctx, (PySSLContext *)value); SSL_set_SSL_CTX(self->ssl, self->ctx->ctx); #endif } else { @@ -1647,8 +1646,7 @@ PySSL_get_owner(PySSLSocket *self, void *c) static int PySSL_set_owner(PySSLSocket *self, PyObject *value, void *c) { - Py_XDECREF(self->owner); - self->owner = PyWeakref_NewRef(value, NULL); + Py_SETREF(self->owner, PyWeakref_NewRef(value, NULL)); if (self->owner == NULL) return -1; return 0; |