Commit dc09715d authored by Guido van Rossum's avatar Guido van Rossum

Use unicode instead of 8-bit strings.

Patch by Alexandre Vassalotti, SF# 1752229.
parent c3e7ffc6
......@@ -58,8 +58,8 @@ dl_sym(dlobject *xp, PyObject *args)
{
char *name;
PyUnivPtr *func;
if (PyString_Check(args)) {
name = PyString_AS_STRING(args);
if (PyUnicode_Check(args)) {
name = PyUnicode_AsString(args);
} else {
PyErr_Format(PyExc_TypeError, "expected string, found %.200s",
args->ob_type->tp_name);
......@@ -88,14 +88,14 @@ dl_call(dlobject *xp, PyObject *args)
return NULL;
}
name = PyTuple_GetItem(args, 0);
if (!PyString_Check(name)) {
if (!PyUnicode_Check(name)) {
PyErr_SetString(PyExc_TypeError,
"function name must be a string");
return NULL;
}
func = (long (*)(long, long, long, long, long,
long, long, long, long, long))
dlsym(xp->dl_handle, PyString_AsString(name));
dlsym(xp->dl_handle, PyUnicode_AsString(name));
if (func == NULL) {
PyErr_SetString(PyExc_ValueError, dlerror());
return NULL;
......@@ -111,8 +111,8 @@ dl_call(dlobject *xp, PyObject *args)
alist[i-1] = PyInt_AsLong(v);
if (alist[i-1] == -1 && PyErr_Occurred())
return NULL;
} else if (PyString_Check(v))
alist[i-1] = (long)PyString_AsString(v);
} else if (PyUnicode_Check(v))
alist[i-1] = (long)PyUnicode_AsString(v);
else if (v == Py_None)
alist[i-1] = (long) ((char *)NULL);
else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment