[Python-checkins] bpo-34899: Fix a possible assertion failure due to int_from_bytes_impl() (GH-9705)

Miss Islington (bot) webhook-mailer at python.org
Fri Oct 5 17:24:30 EDT 2018


https://github.com/python/cpython/commit/526929be39e139a7d89f4c363d79c28566f30d71
commit: 526929be39e139a7d89f4c363d79c28566f30d71
branch: 3.6
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2018-10-05T14:24:25-07:00
summary:

bpo-34899: Fix a possible assertion failure due to int_from_bytes_impl() (GH-9705)


The _PyLong_FromByteArray() call in int_from_bytes_impl() was
unchecked.
(cherry picked from commit 7bb9cd0a6766fd3e7b3c1e8f2315304ae192b34c)

Co-authored-by: Zackery Spytz <zspytz at gmail.com>

files:
M Objects/longobject.c

diff --git a/Objects/longobject.c b/Objects/longobject.c
index c3c0949189d8..3864cec97a0a 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -5302,7 +5302,7 @@ long_from_bytes(PyTypeObject *type, PyObject *args, PyObject *kwds)
         little_endian, is_signed);
     Py_DECREF(bytes);
 
-    if (type != &PyLong_Type) {
+    if (long_obj != NULL && type != &PyLong_Type) {
         Py_SETREF(long_obj, PyObject_CallFunctionObjArgs((PyObject *)type,
                                                          long_obj, NULL));
     }



More information about the Python-checkins mailing list