mirror of
https://github.com/python/cpython.git
synced 2025-08-04 08:59:19 +00:00
bpo-35636: Remove redundant check in unicode_hash(). (GH-11402)
_Py_HashBytes() does the check for empty string.
This commit is contained in:
parent
f8b534477a
commit
a1d1425306
1 changed files with 1 additions and 10 deletions
|
@ -11656,7 +11656,6 @@ unicode_getitem(PyObject *self, Py_ssize_t index)
|
|||
static Py_hash_t
|
||||
unicode_hash(PyObject *self)
|
||||
{
|
||||
Py_ssize_t len;
|
||||
Py_uhash_t x; /* Unsigned for defined overflow behavior. */
|
||||
|
||||
#ifdef Py_DEBUG
|
||||
|
@ -11666,15 +11665,7 @@ unicode_hash(PyObject *self)
|
|||
return _PyUnicode_HASH(self);
|
||||
if (PyUnicode_READY(self) == -1)
|
||||
return -1;
|
||||
len = PyUnicode_GET_LENGTH(self);
|
||||
/*
|
||||
We make the hash of the empty string be 0, rather than using
|
||||
(prefix ^ suffix), since this slightly obfuscates the hash secret
|
||||
*/
|
||||
if (len == 0) {
|
||||
_PyUnicode_HASH(self) = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
x = _Py_HashBytes(PyUnicode_DATA(self),
|
||||
PyUnicode_GET_LENGTH(self) * PyUnicode_KIND(self));
|
||||
_PyUnicode_HASH(self) = x;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue