]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-34899: Fix a possible assertion failure due to int_from_bytes_impl() (GH-9705)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Fri, 5 Oct 2018 21:24:25 +0000 (14:24 -0700)
committerGitHub <noreply@github.com>
Fri, 5 Oct 2018 21:24:25 +0000 (14:24 -0700)
The _PyLong_FromByteArray() call in int_from_bytes_impl() was
unchecked.
(cherry picked from commit 7bb9cd0a6766fd3e7b3c1e8f2315304ae192b34c)

Co-authored-by: Zackery Spytz <zspytz@gmail.com>
Objects/longobject.c

index c3c0949189d85106d29aa581ce9a1a733f3a8158..3864cec97a0a0fd42cd6f7d9e4635fd09e57fce7 100644 (file)
@@ -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));
     }