summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Modules/sre.h4
-rw-r--r--Objects/fileobject.c4
2 files changed, 7 insertions, 1 deletions
diff --git a/Modules/sre.h b/Modules/sre.h
index 9bfdf7fdfc..cbc98f1a13 100644
--- a/Modules/sre.h
+++ b/Modules/sre.h
@@ -15,7 +15,11 @@
/* size of a code word (must be unsigned short or larger, and
large enough to hold a UCS4 character) */
+#ifdef Py_USING_UNICODE
#define SRE_CODE Py_UCS4
+#else
+#define SRE_CODE unsigned long
+#endif
typedef struct {
PyObject_VAR_HEAD
diff --git a/Objects/fileobject.c b/Objects/fileobject.c
index 561ec217c2..ece23703d4 100644
--- a/Objects/fileobject.c
+++ b/Objects/fileobject.c
@@ -1816,7 +1816,6 @@ file_write(PyFileObject *f, PyObject *args)
n = pbuf.len;
}
else {
- const char *encoding, *errors;
PyObject *text;
if (!PyArg_ParseTuple(args, "O", &text))
return NULL;
@@ -1824,7 +1823,9 @@ file_write(PyFileObject *f, PyObject *args)
if (PyString_Check(text)) {
s = PyString_AS_STRING(text);
n = PyString_GET_SIZE(text);
+#ifdef Py_USING_UNICODE
} else if (PyUnicode_Check(text)) {
+ const char *encoding, *errors;
if (f->f_encoding != Py_None)
encoding = PyString_AS_STRING(f->f_encoding);
else
@@ -1838,6 +1839,7 @@ file_write(PyFileObject *f, PyObject *args)
return NULL;
s = PyString_AS_STRING(encoded);
n = PyString_GET_SIZE(encoded);
+#endif
} else {
if (PyObject_AsCharBuffer(text, &s, &n))
return NULL;