diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-11 09:57:37 +0300 |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-11 09:57:37 +0300 |
commit | 59865e7fe158bcedc0c2b6252593650b018cf738 (patch) | |
tree | 8c11c78ca7a4bb7defc9b37f45c1bf92242814c6 | |
parent | a29f7204937dc2600f6cdf6af91ef0c30dba36dc (diff) | |
parent | 864b63c33f8f715121efeb9fce031f9c2534c27a (diff) | |
download | cpython-git-59865e7fe158bcedc0c2b6252593650b018cf738.tar.gz |
Issue #26200: Restored more safe usages of Py_SETREF.
-rw-r--r-- | Modules/_decimal/_decimal.c | 8 | ||||
-rw-r--r-- | Modules/_functoolsmodule.c | 6 | ||||
-rw-r--r-- | Objects/floatobject.c | 4 |
3 files changed, 9 insertions, 9 deletions
diff --git a/Modules/_decimal/_decimal.c b/Modules/_decimal/_decimal.c index 0c02d28db7..3c2ad851ba 100644 --- a/Modules/_decimal/_decimal.c +++ b/Modules/_decimal/_decimal.c @@ -3439,14 +3439,14 @@ dec_as_integer_ratio(PyObject *self, PyObject *args UNUSED) goto error; } - Py_XSETREF(exponent, long_methods->nb_power(tmp, exponent, Py_None)); + Py_SETREF(exponent, long_methods->nb_power(tmp, exponent, Py_None)); Py_DECREF(tmp); if (exponent == NULL) { goto error; } if (exp >= 0) { - Py_XSETREF(numerator, long_methods->nb_multiply(numerator, exponent)); + Py_SETREF(numerator, long_methods->nb_multiply(numerator, exponent)); if (numerator == NULL) { goto error; } @@ -3462,8 +3462,8 @@ dec_as_integer_ratio(PyObject *self, PyObject *args UNUSED) if (tmp == NULL) { goto error; } - Py_XSETREF(numerator, long_methods->nb_floor_divide(numerator, tmp)); - Py_XSETREF(denominator, long_methods->nb_floor_divide(denominator, tmp)); + Py_SETREF(numerator, long_methods->nb_floor_divide(numerator, tmp)); + Py_SETREF(denominator, long_methods->nb_floor_divide(denominator, tmp)); Py_DECREF(tmp); if (numerator == NULL || denominator == NULL) { goto error; diff --git a/Modules/_functoolsmodule.c b/Modules/_functoolsmodule.c index 620570808c..1aa457162d 100644 --- a/Modules/_functoolsmodule.c +++ b/Modules/_functoolsmodule.c @@ -294,9 +294,9 @@ partial_setstate(partialobject *pto, PyObject *state) else Py_INCREF(dict); - Py_XSETREF(pto->fn, fn); - Py_XSETREF(pto->args, fnargs); - Py_XSETREF(pto->kw, kw); + Py_SETREF(pto->fn, fn); + Py_SETREF(pto->args, fnargs); + Py_SETREF(pto->kw, kw); Py_XSETREF(pto->dict, dict); Py_RETURN_NONE; } diff --git a/Objects/floatobject.c b/Objects/floatobject.c index 32a0de1f3b..eb60659615 100644 --- a/Objects/floatobject.c +++ b/Objects/floatobject.c @@ -1494,13 +1494,13 @@ float_as_integer_ratio(PyObject *v, PyObject *unused) /* fold in 2**exponent */ if (exponent > 0) { - Py_XSETREF(numerator, + Py_SETREF(numerator, long_methods->nb_lshift(numerator, py_exponent)); if (numerator == NULL) goto error; } else { - Py_XSETREF(denominator, + Py_SETREF(denominator, long_methods->nb_lshift(denominator, py_exponent)); if (denominator == NULL) goto error; |