]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-111178: Avoid calling long_hash from incompatible pointer type (GH-122972)
authorBénédikt Tran <10796600+picnixz@users.noreply.github.com>
Wed, 14 Aug 2024 09:50:35 +0000 (11:50 +0200)
committerGitHub <noreply@github.com>
Wed, 14 Aug 2024 09:50:35 +0000 (11:50 +0200)
Make `long_hash` compatible with `hashfunc`.

Objects/longobject.c

index 050ce1a730384226d7c23afa5120c20925048828..7239d685fdf740930cdc739a2a663a6c3f6fa755 100644 (file)
@@ -3614,8 +3614,9 @@ long_dealloc(PyObject *self)
 }
 
 static Py_hash_t
-long_hash(PyLongObject *v)
+long_hash(PyObject *obj)
 {
+    PyLongObject *v = (PyLongObject *)obj;
     Py_uhash_t x;
     Py_ssize_t i;
     int sign;
@@ -6607,7 +6608,7 @@ PyTypeObject PyLong_Type = {
     &long_as_number,                            /* tp_as_number */
     0,                                          /* tp_as_sequence */
     0,                                          /* tp_as_mapping */
-    (hashfunc)long_hash,                        /* tp_hash */
+    long_hash,                                  /* tp_hash */
     0,                                          /* tp_call */
     0,                                          /* tp_str */
     PyObject_GenericGetAttr,                    /* tp_getattro */