Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize

with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize.
This commit is contained in:
Serhiy Storchaka 2016-11-20 09:13:07 +02:00
parent e20973926a
commit 06515833fe
31 changed files with 62 additions and 62 deletions

View File

@ -1723,7 +1723,7 @@ c_void_p_from_param(PyObject *type, PyObject *value)
if (stgd && CDataObject_Check(value) && stgd->proto && PyUnicode_Check(stgd->proto)) { if (stgd && CDataObject_Check(value) && stgd->proto && PyUnicode_Check(stgd->proto)) {
PyCArgObject *parg; PyCArgObject *parg;
switch (_PyUnicode_AsString(stgd->proto)[0]) { switch (PyUnicode_AsUTF8(stgd->proto)[0]) {
case 'z': /* c_char_p */ case 'z': /* c_char_p */
case 'Z': /* c_wchar_p */ case 'Z': /* c_wchar_p */
parg = PyCArgObject_new(); parg = PyCArgObject_new();
@ -1835,7 +1835,7 @@ PyCSimpleType_paramfunc(CDataObject *self)
dict = PyObject_stgdict((PyObject *)self); dict = PyObject_stgdict((PyObject *)self);
assert(dict); /* Cannot be NULL for CDataObject instances */ assert(dict); /* Cannot be NULL for CDataObject instances */
fmt = _PyUnicode_AsString(dict->proto); fmt = PyUnicode_AsUTF8(dict->proto);
assert(fmt); assert(fmt);
fd = _ctypes_get_fielddesc(fmt); fd = _ctypes_get_fielddesc(fmt);
@ -2059,7 +2059,7 @@ PyCSimpleType_from_param(PyObject *type, PyObject *value)
assert(dict); assert(dict);
/* I think we can rely on this being a one-character string */ /* I think we can rely on this being a one-character string */
fmt = _PyUnicode_AsString(dict->proto); fmt = PyUnicode_AsUTF8(dict->proto);
assert(fmt); assert(fmt);
fd = _ctypes_get_fielddesc(fmt); fd = _ctypes_get_fielddesc(fmt);
@ -3128,7 +3128,7 @@ _check_outarg_type(PyObject *arg, Py_ssize_t index)
/* simple pointer types, c_void_p, c_wchar_p, BSTR, ... */ /* simple pointer types, c_void_p, c_wchar_p, BSTR, ... */
&& PyUnicode_Check(dict->proto) && PyUnicode_Check(dict->proto)
/* We only allow c_void_p, c_char_p and c_wchar_p as a simple output parameter type */ /* We only allow c_void_p, c_char_p and c_wchar_p as a simple output parameter type */
&& (strchr("PzZ", _PyUnicode_AsString(dict->proto)[0]))) { && (strchr("PzZ", PyUnicode_AsUTF8(dict->proto)[0]))) {
return 1; return 1;
} }
@ -3218,7 +3218,7 @@ _get_name(PyObject *obj, const char **pname)
return *pname ? 1 : 0; return *pname ? 1 : 0;
} }
if (PyUnicode_Check(obj)) { if (PyUnicode_Check(obj)) {
*pname = _PyUnicode_AsString(obj); *pname = PyUnicode_AsUTF8(obj);
return *pname ? 1 : 0; return *pname ? 1 : 0;
} }
PyErr_SetString(PyExc_TypeError, PyErr_SetString(PyExc_TypeError,
@ -5233,7 +5233,7 @@ cast_check_pointertype(PyObject *arg)
dict = PyType_stgdict(arg); dict = PyType_stgdict(arg);
if (dict) { if (dict) {
if (PyUnicode_Check(dict->proto) if (PyUnicode_Check(dict->proto)
&& (strchr("sPzUZXO", _PyUnicode_AsString(dict->proto)[0]))) { && (strchr("sPzUZXO", PyUnicode_AsUTF8(dict->proto)[0]))) {
/* simple pointer types, c_void_p, c_wchar_p, BSTR, ... */ /* simple pointer types, c_void_p, c_wchar_p, BSTR, ... */
return 1; return 1;
} }

View File

@ -489,7 +489,7 @@ PyCStructUnionType_update_stgdict(PyObject *type, PyObject *fields, int isStruct
if (isStruct && !isPacked) { if (isStruct && !isPacked) {
char *fieldfmt = dict->format ? dict->format : "B"; char *fieldfmt = dict->format ? dict->format : "B";
char *fieldname = _PyUnicode_AsString(name); char *fieldname = PyUnicode_AsUTF8(name);
char *ptr; char *ptr;
Py_ssize_t len; Py_ssize_t len;
char *buf; char *buf;

View File

@ -1219,7 +1219,7 @@ wrap_strftime(PyObject *object, PyObject *format, PyObject *timetuple,
assert(object && format && timetuple); assert(object && format && timetuple);
assert(PyUnicode_Check(format)); assert(PyUnicode_Check(format));
/* Convert the input format to a C string and size */ /* Convert the input format to a C string and size */
pin = _PyUnicode_AsStringAndSize(format, &flen); pin = PyUnicode_AsUTF8AndSize(format, &flen);
if (!pin) if (!pin)
return NULL; return NULL;
@ -1287,7 +1287,7 @@ wrap_strftime(PyObject *object, PyObject *format, PyObject *timetuple,
} }
assert(Zreplacement != NULL); assert(Zreplacement != NULL);
assert(PyUnicode_Check(Zreplacement)); assert(PyUnicode_Check(Zreplacement));
ptoappend = _PyUnicode_AsStringAndSize(Zreplacement, ptoappend = PyUnicode_AsUTF8AndSize(Zreplacement,
&ntoappend); &ntoappend);
if (ptoappend == NULL) if (ptoappend == NULL)
goto Done; goto Done;

View File

@ -708,7 +708,7 @@ _io_StringIO___init___impl(stringio *self, PyObject *value,
Py_TYPE(newline_obj)->tp_name); Py_TYPE(newline_obj)->tp_name);
return -1; return -1;
} }
newline = _PyUnicode_AsString(newline_obj); newline = PyUnicode_AsUTF8(newline_obj);
if (newline == NULL) if (newline == NULL)
return -1; return -1;
} }

View File

@ -921,7 +921,7 @@ _io_TextIOWrapper___init___impl(textio *self, PyObject *buffer,
Py_CLEAR(self->encoding); Py_CLEAR(self->encoding);
} }
if (self->encoding != NULL) { if (self->encoding != NULL) {
encoding = _PyUnicode_AsString(self->encoding); encoding = PyUnicode_AsUTF8(self->encoding);
if (encoding == NULL) if (encoding == NULL)
goto error; goto error;
} }
@ -964,7 +964,7 @@ _io_TextIOWrapper___init___impl(textio *self, PyObject *buffer,
} }
self->writetranslate = (newline == NULL || newline[0] != '\0'); self->writetranslate = (newline == NULL || newline[0] != '\0');
if (!self->readuniversal && self->readnl) { if (!self->readuniversal && self->readnl) {
self->writenl = _PyUnicode_AsString(self->readnl); self->writenl = PyUnicode_AsUTF8(self->readnl);
if (self->writenl == NULL) if (self->writenl == NULL)
goto error; goto error;
if (!strcmp(self->writenl, "\n")) if (!strcmp(self->writenl, "\n"))

View File

@ -1951,7 +1951,7 @@ save_long(PicklerObject *self, PyObject *obj)
if (repr == NULL) if (repr == NULL)
goto error; goto error;
string = _PyUnicode_AsStringAndSize(repr, &size); string = PyUnicode_AsUTF8AndSize(repr, &size);
if (string == NULL) if (string == NULL)
goto error; goto error;

View File

@ -505,7 +505,7 @@ _pysqlite_set_result(sqlite3_context* context, PyObject* py_val)
} else if (PyFloat_Check(py_val)) { } else if (PyFloat_Check(py_val)) {
sqlite3_result_double(context, PyFloat_AsDouble(py_val)); sqlite3_result_double(context, PyFloat_AsDouble(py_val));
} else if (PyUnicode_Check(py_val)) { } else if (PyUnicode_Check(py_val)) {
const char *str = _PyUnicode_AsString(py_val); const char *str = PyUnicode_AsUTF8(py_val);
if (str == NULL) if (str == NULL)
return -1; return -1;
sqlite3_result_text(context, str, -1, SQLITE_TRANSIENT); sqlite3_result_text(context, str, -1, SQLITE_TRANSIENT);
@ -1527,7 +1527,7 @@ pysqlite_connection_create_collation(pysqlite_Connection* self, PyObject* args)
} }
} }
uppercase_name_str = _PyUnicode_AsString(uppercase_name); uppercase_name_str = PyUnicode_AsUTF8(uppercase_name);
if (!uppercase_name_str) if (!uppercase_name_str)
goto finally; goto finally;

View File

@ -465,7 +465,7 @@ PyObject* _pysqlite_query_execute(pysqlite_Cursor* self, int multiple, PyObject*
pysqlite_statement_reset(self->statement); pysqlite_statement_reset(self->statement);
} }
operation_cstr = _PyUnicode_AsStringAndSize(operation, &operation_len); operation_cstr = PyUnicode_AsUTF8AndSize(operation, &operation_len);
if (operation_cstr == NULL) if (operation_cstr == NULL)
goto error; goto error;
@ -689,7 +689,7 @@ PyObject* pysqlite_cursor_executescript(pysqlite_Cursor* self, PyObject* args)
self->reset = 0; self->reset = 0;
if (PyUnicode_Check(script_obj)) { if (PyUnicode_Check(script_obj)) {
script_cstr = _PyUnicode_AsString(script_obj); script_cstr = PyUnicode_AsUTF8(script_obj);
if (!script_cstr) { if (!script_cstr) {
return NULL; return NULL;
} }

View File

@ -98,7 +98,7 @@ PyObject* pysqlite_row_subscript(pysqlite_Row* self, PyObject* idx)
Py_XINCREF(item); Py_XINCREF(item);
return item; return item;
} else if (PyUnicode_Check(idx)) { } else if (PyUnicode_Check(idx)) {
key = _PyUnicode_AsString(idx); key = PyUnicode_AsUTF8(idx);
if (key == NULL) if (key == NULL)
return NULL; return NULL;
@ -108,7 +108,7 @@ PyObject* pysqlite_row_subscript(pysqlite_Row* self, PyObject* idx)
PyObject *obj; PyObject *obj;
obj = PyTuple_GET_ITEM(self->description, i); obj = PyTuple_GET_ITEM(self->description, i);
obj = PyTuple_GET_ITEM(obj, 0); obj = PyTuple_GET_ITEM(obj, 0);
compare_key = _PyUnicode_AsString(obj); compare_key = PyUnicode_AsUTF8(obj);
if (!compare_key) { if (!compare_key) {
return NULL; return NULL;
} }

View File

@ -59,7 +59,7 @@ int pysqlite_statement_create(pysqlite_Statement* self, pysqlite_Connection* con
self->st = NULL; self->st = NULL;
self->in_use = 0; self->in_use = 0;
sql_cstr = _PyUnicode_AsStringAndSize(sql, &sql_cstr_len); sql_cstr = PyUnicode_AsUTF8AndSize(sql, &sql_cstr_len);
if (sql_cstr == NULL) { if (sql_cstr == NULL) {
rc = PYSQLITE_SQL_WRONG_TYPE; rc = PYSQLITE_SQL_WRONG_TYPE;
return rc; return rc;
@ -152,7 +152,7 @@ int pysqlite_statement_bind_parameter(pysqlite_Statement* self, int pos, PyObjec
rc = sqlite3_bind_double(self->st, pos, PyFloat_AsDouble(parameter)); rc = sqlite3_bind_double(self->st, pos, PyFloat_AsDouble(parameter));
break; break;
case TYPE_UNICODE: case TYPE_UNICODE:
string = _PyUnicode_AsStringAndSize(parameter, &buflen); string = PyUnicode_AsUTF8AndSize(parameter, &buflen);
if (string == NULL) if (string == NULL)
return -1; return -1;
if (buflen > INT_MAX) { if (buflen > INT_MAX) {
@ -325,7 +325,7 @@ int pysqlite_statement_recompile(pysqlite_Statement* self, PyObject* params)
Py_ssize_t sql_len; Py_ssize_t sql_len;
sqlite3_stmt* new_st; sqlite3_stmt* new_st;
sql_cstr = _PyUnicode_AsStringAndSize(self->sql, &sql_len); sql_cstr = PyUnicode_AsUTF8AndSize(self->sql, &sql_len);
if (sql_cstr == NULL) { if (sql_cstr == NULL) {
rc = PYSQLITE_SQL_WRONG_TYPE; rc = PYSQLITE_SQL_WRONG_TYPE;
return rc; return rc;

View File

@ -267,7 +267,7 @@ getcodec(PyObject *self, PyObject *encoding)
"encoding name must be a string."); "encoding name must be a string.");
return NULL; return NULL;
} }
enc = _PyUnicode_AsString(encoding); enc = PyUnicode_AsUTF8(encoding);
if (enc == NULL) if (enc == NULL)
return NULL; return NULL;

View File

@ -85,7 +85,7 @@ call_error_callback(PyObject *errors, PyObject *exc)
const char *str; const char *str;
assert(PyUnicode_Check(errors)); assert(PyUnicode_Check(errors));
str = _PyUnicode_AsString(errors); str = PyUnicode_AsUTF8(errors);
if (str == NULL) if (str == NULL)
return NULL; return NULL;
cb = PyCodec_LookupError(str); cb = PyCodec_LookupError(str);
@ -138,7 +138,7 @@ codecctx_errors_set(MultibyteStatefulCodecContext *self, PyObject *value,
return -1; return -1;
} }
str = _PyUnicode_AsString(value); str = PyUnicode_AsUTF8(value);
if (str == NULL) if (str == NULL)
return -1; return -1;

View File

@ -912,7 +912,7 @@ build_node_children(PyObject *tuple, node *root, int *line_num)
Py_DECREF(o); Py_DECREF(o);
} }
} }
temp_str = _PyUnicode_AsStringAndSize(temp, &len); temp_str = PyUnicode_AsUTF8AndSize(temp, &len);
if (temp_str == NULL) { if (temp_str == NULL) {
Py_DECREF(temp); Py_DECREF(temp);
Py_XDECREF(elem); Py_XDECREF(elem);
@ -1013,7 +1013,7 @@ build_node_tree(PyObject *tuple)
if (res && encoding) { if (res && encoding) {
Py_ssize_t len; Py_ssize_t len;
const char *temp; const char *temp;
temp = _PyUnicode_AsStringAndSize(encoding, &len); temp = PyUnicode_AsUTF8AndSize(encoding, &len);
if (temp == NULL) { if (temp == NULL) {
Py_DECREF(res); Py_DECREF(res);
Py_DECREF(encoding); Py_DECREF(encoding);

View File

@ -9325,7 +9325,7 @@ conv_confname(PyObject *arg, int *valuep, struct constdef *table,
"configuration names must be strings or integers"); "configuration names must be strings or integers");
return 0; return 0;
} }
confname = _PyUnicode_AsString(arg); confname = PyUnicode_AsUTF8(arg);
if (confname == NULL) if (confname == NULL)
return 0; return 0;
while (lo < hi) { while (lo < hi) {

View File

@ -5989,7 +5989,7 @@ socket_getaddrinfo(PyObject *self, PyObject *args, PyObject* kwargs)
PyOS_snprintf(pbuf, sizeof(pbuf), "%ld", value); PyOS_snprintf(pbuf, sizeof(pbuf), "%ld", value);
pptr = pbuf; pptr = pbuf;
} else if (PyUnicode_Check(pobj)) { } else if (PyUnicode_Check(pobj)) {
pptr = _PyUnicode_AsString(pobj); pptr = PyUnicode_AsUTF8(pobj);
if (pptr == NULL) if (pptr == NULL)
goto err; goto err;
} else if (PyBytes_Check(pobj)) { } else if (PyBytes_Check(pobj)) {

View File

@ -139,7 +139,7 @@ syslog_openlog(PyObject * self, PyObject * args, PyObject *kwds)
* If NULL, just let openlog figure it out (probably using C argv[0]). * If NULL, just let openlog figure it out (probably using C argv[0]).
*/ */
if (S_ident_o) { if (S_ident_o) {
ident = _PyUnicode_AsString(S_ident_o); ident = PyUnicode_AsUTF8(S_ident_o);
if (ident == NULL) if (ident == NULL)
return NULL; return NULL;
} }
@ -167,7 +167,7 @@ syslog_syslog(PyObject * self, PyObject * args)
return NULL; return NULL;
} }
message = _PyUnicode_AsString(message_object); message = PyUnicode_AsUTF8(message_object);
if (message == NULL) if (message == NULL)
return NULL; return NULL;

View File

@ -441,7 +441,7 @@ gettmarg(PyObject *args, struct tm *p)
if (Py_TYPE(args) == &StructTimeType) { if (Py_TYPE(args) == &StructTimeType) {
PyObject *item; PyObject *item;
item = PyTuple_GET_ITEM(args, 9); item = PyTuple_GET_ITEM(args, 9);
p->tm_zone = item == Py_None ? NULL : _PyUnicode_AsString(item); p->tm_zone = item == Py_None ? NULL : PyUnicode_AsUTF8(item);
item = PyTuple_GET_ITEM(args, 10); item = PyTuple_GET_ITEM(args, 10);
p->tm_gmtoff = item == Py_None ? 0 : PyLong_AsLong(item); p->tm_gmtoff = item == Py_None ? 0 : PyLong_AsLong(item);
if (PyErr_Occurred()) if (PyErr_Occurred())

View File

@ -1274,7 +1274,7 @@ float_fromhex(PyObject *cls, PyObject *arg)
* exp+4*ndigits and exp-4*ndigits are within the range of a long. * exp+4*ndigits and exp-4*ndigits are within the range of a long.
*/ */
s = _PyUnicode_AsStringAndSize(arg, &length); s = PyUnicode_AsUTF8AndSize(arg, &length);
if (s == NULL) if (s == NULL)
return NULL; return NULL;
s_end = s + length; s_end = s + length;
@ -1628,7 +1628,7 @@ float_getformat(PyTypeObject *v, PyObject* arg)
Py_TYPE(arg)->tp_name); Py_TYPE(arg)->tp_name);
return NULL; return NULL;
} }
s = _PyUnicode_AsString(arg); s = PyUnicode_AsUTF8(arg);
if (s == NULL) if (s == NULL)
return NULL; return NULL;
if (strcmp(s, "double") == 0) { if (strcmp(s, "double") == 0) {

View File

@ -483,7 +483,7 @@ PyModule_GetName(PyObject *m)
if (name == NULL) if (name == NULL)
return NULL; return NULL;
Py_DECREF(name); /* module dict has still a reference */ Py_DECREF(name); /* module dict has still a reference */
return _PyUnicode_AsString(name); return PyUnicode_AsUTF8(name);
} }
PyObject* PyObject*
@ -516,7 +516,7 @@ PyModule_GetFilename(PyObject *m)
fileobj = PyModule_GetFilenameObject(m); fileobj = PyModule_GetFilenameObject(m);
if (fileobj == NULL) if (fileobj == NULL)
return NULL; return NULL;
utf8 = _PyUnicode_AsString(fileobj); utf8 = PyUnicode_AsUTF8(fileobj);
Py_DECREF(fileobj); /* module dict has still a reference */ Py_DECREF(fileobj); /* module dict has still a reference */
return utf8; return utf8;
} }
@ -569,7 +569,7 @@ _PyModule_ClearDict(PyObject *d)
if (PyUnicode_READ_CHAR(key, 0) == '_' && if (PyUnicode_READ_CHAR(key, 0) == '_' &&
PyUnicode_READ_CHAR(key, 1) != '_') { PyUnicode_READ_CHAR(key, 1) != '_') {
if (Py_VerboseFlag > 1) { if (Py_VerboseFlag > 1) {
const char *s = _PyUnicode_AsString(key); const char *s = PyUnicode_AsUTF8(key);
if (s != NULL) if (s != NULL)
PySys_WriteStderr("# clear[1] %s\n", s); PySys_WriteStderr("# clear[1] %s\n", s);
else else
@ -589,7 +589,7 @@ _PyModule_ClearDict(PyObject *d)
!_PyUnicode_EqualToASCIIString(key, "__builtins__")) !_PyUnicode_EqualToASCIIString(key, "__builtins__"))
{ {
if (Py_VerboseFlag > 1) { if (Py_VerboseFlag > 1) {
const char *s = _PyUnicode_AsString(key); const char *s = PyUnicode_AsUTF8(key);
if (s != NULL) if (s != NULL)
PySys_WriteStderr("# clear[2] %s\n", s); PySys_WriteStderr("# clear[2] %s\n", s);
else else

View File

@ -890,7 +890,7 @@ PyObject_GetAttr(PyObject *v, PyObject *name)
if (tp->tp_getattro != NULL) if (tp->tp_getattro != NULL)
return (*tp->tp_getattro)(v, name); return (*tp->tp_getattro)(v, name);
if (tp->tp_getattr != NULL) { if (tp->tp_getattr != NULL) {
char *name_str = _PyUnicode_AsString(name); char *name_str = PyUnicode_AsUTF8(name);
if (name_str == NULL) if (name_str == NULL)
return NULL; return NULL;
return (*tp->tp_getattr)(v, name_str); return (*tp->tp_getattr)(v, name_str);
@ -934,7 +934,7 @@ PyObject_SetAttr(PyObject *v, PyObject *name, PyObject *value)
return err; return err;
} }
if (tp->tp_setattr != NULL) { if (tp->tp_setattr != NULL) {
char *name_str = _PyUnicode_AsString(name); char *name_str = PyUnicode_AsUTF8(name);
if (name_str == NULL) if (name_str == NULL)
return -1; return -1;
err = (*tp->tp_setattr)(v, name_str, value); err = (*tp->tp_setattr)(v, name_str, value);

View File

@ -2466,7 +2466,7 @@ test_c_api(PySetObject *so)
/* Exercise direct iteration */ /* Exercise direct iteration */
i = 0, count = 0; i = 0, count = 0;
while (_PySet_NextEntry((PyObject *)dup, &i, &x, &hash)) { while (_PySet_NextEntry((PyObject *)dup, &i, &x, &hash)) {
s = _PyUnicode_AsString(x); s = PyUnicode_AsUTF8(x);
assert(s && (s[0] == 'a' || s[0] == 'b' || s[0] == 'c')); assert(s && (s[0] == 'a' || s[0] == 'b' || s[0] == 'c'));
count++; count++;
} }

View File

@ -194,7 +194,7 @@ structseq_repr(PyStructSequence *obj)
repr = PyObject_Repr(val); repr = PyObject_Repr(val);
if (repr == NULL) if (repr == NULL)
return NULL; return NULL;
crepr = _PyUnicode_AsString(repr); crepr = PyUnicode_AsUTF8(repr);
if (crepr == NULL) { if (crepr == NULL) {
Py_DECREF(repr); Py_DECREF(repr);
return NULL; return NULL;

View File

@ -1626,7 +1626,7 @@ consistent method resolution\norder (MRO) for bases");
PyObject *name = class_name(k); PyObject *name = class_name(k);
char *name_str; char *name_str;
if (name != NULL) { if (name != NULL) {
name_str = _PyUnicode_AsString(name); name_str = PyUnicode_AsUTF8(name);
if (name_str == NULL) if (name_str == NULL)
name_str = "?"; name_str = "?";
} else } else
@ -2575,7 +2575,7 @@ type_new(PyTypeObject *metatype, PyObject *args, PyObject *kwds)
char *doc_str; char *doc_str;
char *tp_doc; char *tp_doc;
doc_str = _PyUnicode_AsString(doc); doc_str = PyUnicode_AsUTF8(doc);
if (doc_str == NULL) if (doc_str == NULL)
goto error; goto error;
/* Silently truncate the docstring if it contains null bytes. */ /* Silently truncate the docstring if it contains null bytes. */
@ -2623,7 +2623,7 @@ type_new(PyTypeObject *metatype, PyObject *args, PyObject *kwds)
slotoffset = base->tp_basicsize; slotoffset = base->tp_basicsize;
if (et->ht_slots != NULL) { if (et->ht_slots != NULL) {
for (i = 0; i < nslots; i++, mp++) { for (i = 0; i < nslots; i++, mp++) {
mp->name = _PyUnicode_AsString( mp->name = PyUnicode_AsUTF8(
PyTuple_GET_ITEM(et->ht_slots, i)); PyTuple_GET_ITEM(et->ht_slots, i));
if (mp->name == NULL) if (mp->name == NULL)
goto error; goto error;

View File

@ -446,7 +446,7 @@ fp_readl(char *s, int size, struct tok_state *tok)
} }
if (PyUnicode_CheckExact(bufobj)) if (PyUnicode_CheckExact(bufobj))
{ {
buf = _PyUnicode_AsStringAndSize(bufobj, &buflen); buf = PyUnicode_AsUTF8AndSize(bufobj, &buflen);
if (buf == NULL) { if (buf == NULL) {
goto error; goto error;
} }

View File

@ -1903,8 +1903,8 @@ builtin_input_impl(PyObject *module, PyObject *prompt)
/* stdin is a text stream, so it must have an /* stdin is a text stream, so it must have an
encoding. */ encoding. */
goto _readline_errors; goto _readline_errors;
stdin_encoding_str = _PyUnicode_AsString(stdin_encoding); stdin_encoding_str = PyUnicode_AsUTF8(stdin_encoding);
stdin_errors_str = _PyUnicode_AsString(stdin_errors); stdin_errors_str = PyUnicode_AsUTF8(stdin_errors);
if (!stdin_encoding_str || !stdin_errors_str) if (!stdin_encoding_str || !stdin_errors_str)
goto _readline_errors; goto _readline_errors;
tmp = _PyObject_CallMethodId(fout, &PyId_flush, NULL); tmp = _PyObject_CallMethodId(fout, &PyId_flush, NULL);
@ -1920,8 +1920,8 @@ builtin_input_impl(PyObject *module, PyObject *prompt)
stdout_errors = _PyObject_GetAttrId(fout, &PyId_errors); stdout_errors = _PyObject_GetAttrId(fout, &PyId_errors);
if (!stdout_encoding || !stdout_errors) if (!stdout_encoding || !stdout_errors)
goto _readline_errors; goto _readline_errors;
stdout_encoding_str = _PyUnicode_AsString(stdout_encoding); stdout_encoding_str = PyUnicode_AsUTF8(stdout_encoding);
stdout_errors_str = _PyUnicode_AsString(stdout_errors); stdout_errors_str = PyUnicode_AsUTF8(stdout_errors);
if (!stdout_encoding_str || !stdout_errors_str) if (!stdout_encoding_str || !stdout_errors_str)
goto _readline_errors; goto _readline_errors;
stringpo = PyObject_Str(prompt); stringpo = PyObject_Str(prompt);

View File

@ -4712,7 +4712,7 @@ PyEval_GetFuncName(PyObject *func)
if (PyMethod_Check(func)) if (PyMethod_Check(func))
return PyEval_GetFuncName(PyMethod_GET_FUNCTION(func)); return PyEval_GetFuncName(PyMethod_GET_FUNCTION(func));
else if (PyFunction_Check(func)) else if (PyFunction_Check(func))
return _PyUnicode_AsString(((PyFunctionObject*)func)->func_name); return PyUnicode_AsUTF8(((PyFunctionObject*)func)->func_name);
else if (PyCFunction_Check(func)) else if (PyCFunction_Check(func))
return ((PyCFunctionObject*)func)->m_ml->ml_name; return ((PyCFunctionObject*)func)->m_ml->ml_name;
else else
@ -5286,7 +5286,7 @@ format_exc_check_arg(PyObject *exc, const char *format_str, PyObject *obj)
if (!obj) if (!obj)
return; return;
obj_str = _PyUnicode_AsString(obj); obj_str = PyUnicode_AsUTF8(obj);
if (!obj_str) if (!obj_str)
return; return;

View File

@ -21,7 +21,7 @@ future_check_features(PyFutureFeatures *ff, stmt_ty s, PyObject *filename)
names = s->v.ImportFrom.names; names = s->v.ImportFrom.names;
for (i = 0; i < asdl_seq_LEN(names); i++) { for (i = 0; i < asdl_seq_LEN(names); i++) {
alias_ty name = (alias_ty)asdl_seq_GET(names, i); alias_ty name = (alias_ty)asdl_seq_GET(names, i);
const char *feature = _PyUnicode_AsString(name->name); const char *feature = PyUnicode_AsUTF8(name->name);
if (!feature) if (!feature)
return 0; return 0;
if (strcmp(feature, FUTURE_NESTED_SCOPES) == 0) { if (strcmp(feature, FUTURE_NESTED_SCOPES) == 0) {

View File

@ -205,7 +205,7 @@ get_codec_name(const char *encoding)
if (!name) if (!name)
goto error; goto error;
name_utf8 = _PyUnicode_AsString(name); name_utf8 = PyUnicode_AsUTF8(name);
if (name_utf8 == NULL) if (name_utf8 == NULL)
goto error; goto error;
name_str = _PyMem_RawStrdup(name_utf8); name_str = _PyMem_RawStrdup(name_utf8);
@ -1285,7 +1285,7 @@ initstdio(void)
encoding_attr = PyObject_GetAttrString(std, "encoding"); encoding_attr = PyObject_GetAttrString(std, "encoding");
if (encoding_attr != NULL) { if (encoding_attr != NULL) {
const char * std_encoding; const char * std_encoding;
std_encoding = _PyUnicode_AsString(encoding_attr); std_encoding = PyUnicode_AsUTF8(encoding_attr);
if (std_encoding != NULL) { if (std_encoding != NULL) {
PyObject *codec_info = _PyCodec_Lookup(std_encoding); PyObject *codec_info = _PyCodec_Lookup(std_encoding);
Py_XDECREF(codec_info); Py_XDECREF(codec_info);

View File

@ -171,7 +171,7 @@ PyRun_InteractiveOneObject(FILE *fp, PyObject *filename, PyCompilerFlags *flags)
if (v && v != Py_None) { if (v && v != Py_None) {
oenc = _PyObject_GetAttrId(v, &PyId_encoding); oenc = _PyObject_GetAttrId(v, &PyId_encoding);
if (oenc) if (oenc)
enc = _PyUnicode_AsString(oenc); enc = PyUnicode_AsUTF8(oenc);
if (!enc) if (!enc)
PyErr_Clear(); PyErr_Clear();
} }
@ -182,7 +182,7 @@ PyRun_InteractiveOneObject(FILE *fp, PyObject *filename, PyCompilerFlags *flags)
if (v == NULL) if (v == NULL)
PyErr_Clear(); PyErr_Clear();
else if (PyUnicode_Check(v)) { else if (PyUnicode_Check(v)) {
ps1 = _PyUnicode_AsString(v); ps1 = PyUnicode_AsUTF8(v);
if (ps1 == NULL) { if (ps1 == NULL) {
PyErr_Clear(); PyErr_Clear();
ps1 = ""; ps1 = "";
@ -195,7 +195,7 @@ PyRun_InteractiveOneObject(FILE *fp, PyObject *filename, PyCompilerFlags *flags)
if (w == NULL) if (w == NULL)
PyErr_Clear(); PyErr_Clear();
else if (PyUnicode_Check(w)) { else if (PyUnicode_Check(w)) {
ps2 = _PyUnicode_AsString(w); ps2 = PyUnicode_AsUTF8(w);
if (ps2 == NULL) { if (ps2 == NULL) {
PyErr_Clear(); PyErr_Clear();
ps2 = ""; ps2 = "";
@ -514,7 +514,7 @@ print_error_text(PyObject *f, int offset, PyObject *text_obj)
char *text; char *text;
char *nl; char *nl;
text = _PyUnicode_AsString(text_obj); text = PyUnicode_AsUTF8(text_obj);
if (text == NULL) if (text == NULL)
return; return;

View File

@ -252,7 +252,7 @@ PyMember_SetOne(char *addr, PyMemberDef *l, PyObject *v)
char *string; char *string;
Py_ssize_t len; Py_ssize_t len;
string = _PyUnicode_AsStringAndSize(v, &len); string = PyUnicode_AsUTF8AndSize(v, &len);
if (string == NULL || len != 1) { if (string == NULL || len != 1) {
PyErr_BadArgument(); PyErr_BadArgument();
return -1; return -1;

View File

@ -114,7 +114,7 @@ sys_displayhook_unencodable(PyObject *outf, PyObject *o)
stdout_encoding = _PyObject_GetAttrId(outf, &PyId_encoding); stdout_encoding = _PyObject_GetAttrId(outf, &PyId_encoding);
if (stdout_encoding == NULL) if (stdout_encoding == NULL)
goto error; goto error;
stdout_encoding_str = _PyUnicode_AsString(stdout_encoding); stdout_encoding_str = PyUnicode_AsUTF8(stdout_encoding);
if (stdout_encoding_str == NULL) if (stdout_encoding_str == NULL)
goto error; goto error;
@ -2411,7 +2411,7 @@ sys_format(_Py_Identifier *key, FILE *fp, const char *format, va_list va)
if (message != NULL) { if (message != NULL) {
if (sys_pyfile_write_unicode(message, file) != 0) { if (sys_pyfile_write_unicode(message, file) != 0) {
PyErr_Clear(); PyErr_Clear();
utf8 = _PyUnicode_AsString(message); utf8 = PyUnicode_AsUTF8(message);
if (utf8 != NULL) if (utf8 != NULL)
fputs(utf8, fp); fputs(utf8, fp);
} }