summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@haypocalc.com>2011-11-10 19:31:37 (GMT)
committerVictor Stinner <victor.stinner@haypocalc.com>2011-11-10 19:31:37 (GMT)
commit24729f36bfb935e14fa53ab9459a4d1ac4da15fe (patch)
tree3e3c6f3bc3103cd24f16dad0f1fd112cc2fb0565
parentebf3ba808e4c10674fa6a545af840ece28dd055a (diff)
downloadcpython-24729f36bfb935e14fa53ab9459a4d1ac4da15fe.zip
cpython-24729f36bfb935e14fa53ab9459a4d1ac4da15fe.tar.gz
cpython-24729f36bfb935e14fa53ab9459a4d1ac4da15fe.tar.bz2
Prefer Py_UCS4 or wchar_t over Py_UNICODE
-rw-r--r--Objects/unicodeobject.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 8a35307..61534b4 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -3844,7 +3844,7 @@ PyUnicode_DecodeUTF7Stateful(const char *s,
Py_ssize_t shiftOutStart;
unsigned int base64bits = 0;
unsigned long base64buffer = 0;
- Py_UNICODE surrogate = 0;
+ Py_UCS4 surrogate = 0;
PyObject *errorHandler = NULL;
PyObject *exc = NULL;
@@ -3873,8 +3873,7 @@ PyUnicode_DecodeUTF7Stateful(const char *s,
s++;
if (base64bits >= 16) {
/* we have enough bits for a UTF-16 value */
- Py_UNICODE outCh = (Py_UNICODE)
- (base64buffer >> (base64bits-16));
+ Py_UCS4 outCh = (Py_UCS4)(base64buffer >> (base64bits-16));
base64bits -= 16;
base64buffer &= (1 << base64bits) - 1; /* clear high bits */
if (surrogate) {
@@ -5232,7 +5231,7 @@ PyUnicode_DecodeUTF16Stateful(const char *s,
stream as-is (giving a ZWNBSP character). */
if (bo == 0) {
if (size >= 2) {
- const Py_UNICODE bom = (q[ihi] << 8) | q[ilo];
+ const Py_UCS4 bom = (q[ihi] << 8) | q[ilo];
#ifdef BYTEORDER_IS_LITTLE_ENDIAN
if (bom == 0xFEFF) {
q += 2;
@@ -5273,7 +5272,7 @@ PyUnicode_DecodeUTF16Stateful(const char *s,
aligned_end = (const unsigned char *) ((size_t) e & ~LONG_PTR_MASK);
while (q < e) {
- Py_UNICODE ch;
+ Py_UCS4 ch;
/* First check for possible aligned read of a C 'long'. Unaligned
reads are more expensive, better to defer to another iteration. */
if (!((size_t) q & LONG_PTR_MASK)) {
@@ -5663,7 +5662,7 @@ PyUnicode_DecodeUnicodeEscape(const char *s,
while (s < end) {
unsigned char c;
- Py_UNICODE x;
+ Py_UCS4 x;
int digits;
/* The only case in which i == ascii_length is a backslash
@@ -6863,7 +6862,7 @@ decode_code_page_strict(UINT code_page,
int insize)
{
const DWORD flags = decode_code_page_flags(code_page);
- Py_UNICODE *out;
+ wchar_t *out;
DWORD outsize;
/* First get the size of the result */
@@ -7177,7 +7176,7 @@ encode_code_page_strict(UINT code_page, PyObject **outbytes,
BOOL *pusedDefaultChar = &usedDefaultChar;
int outsize;
PyObject *exc = NULL;
- Py_UNICODE *p;
+ wchar_t *p;
Py_ssize_t size;
const DWORD flags = encode_code_page_flags(code_page, NULL);
char *out;