mirror of
https://github.com/python/cpython.git
synced 2025-07-14 06:45:17 +00:00
Reuse static global hexdigits array.
This commit is contained in:
parent
79e913eac7
commit
db5d33e4ee
1 changed files with 12 additions and 14 deletions
|
@ -2362,8 +2362,6 @@ PyObject *PyUnicode_EncodeRawUnicodeEscape(const Py_UNICODE *s,
|
|||
char *p;
|
||||
char *q;
|
||||
|
||||
static const char *hexdigit = "0123456789abcdef";
|
||||
|
||||
#ifdef Py_UNICODE_WIDE
|
||||
repr = PyString_FromStringAndSize(NULL, 10 * size);
|
||||
#else
|
||||
|
@ -2382,14 +2380,14 @@ PyObject *PyUnicode_EncodeRawUnicodeEscape(const Py_UNICODE *s,
|
|||
if (ch >= 0x10000) {
|
||||
*p++ = '\\';
|
||||
*p++ = 'U';
|
||||
*p++ = hexdigit[(ch >> 28) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 24) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 20) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 16) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 12) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 8) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 4) & 0xf];
|
||||
*p++ = hexdigit[ch & 15];
|
||||
*p++ = hexdigits[(ch >> 28) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 24) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 20) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 16) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 12) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 8) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 4) & 0xf];
|
||||
*p++ = hexdigits[ch & 15];
|
||||
}
|
||||
else
|
||||
#endif
|
||||
|
@ -2397,10 +2395,10 @@ PyObject *PyUnicode_EncodeRawUnicodeEscape(const Py_UNICODE *s,
|
|||
if (ch >= 256) {
|
||||
*p++ = '\\';
|
||||
*p++ = 'u';
|
||||
*p++ = hexdigit[(ch >> 12) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 8) & 0xf];
|
||||
*p++ = hexdigit[(ch >> 4) & 0xf];
|
||||
*p++ = hexdigit[ch & 15];
|
||||
*p++ = hexdigits[(ch >> 12) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 8) & 0xf];
|
||||
*p++ = hexdigits[(ch >> 4) & 0xf];
|
||||
*p++ = hexdigits[ch & 15];
|
||||
}
|
||||
/* Copy everything else as-is */
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue