Issue #14815: Use Py_ssize_t instead of long for the object hash, to

preserve all 64 bits of hash on Win64.
This commit is contained in:
Larry Hastings 2012-06-24 01:54:21 -07:00
parent 1bc276d7ab
commit 49c15d4a5f
2 changed files with 5 additions and 2 deletions

View file

@ -234,10 +234,10 @@ random_seed(RandomObject *self, PyObject *args)
if (PyLong_Check(arg))
n = PyNumber_Absolute(arg);
else {
long hash = PyObject_Hash(arg);
Py_ssize_t hash = PyObject_Hash(arg);
if (hash == -1)
goto Done;
n = PyLong_FromUnsignedLong((unsigned long)hash);
n = PyLong_FromSsize_t(hash);
}
if (n == NULL)
goto Done;