{
struct bin *r = pp;
- if (PyString_Check(o)) {
- r->p = PyString_AS_STRING(o);
- r->sz = PyString_GET_SIZE(o);
+ if (BIN_CHECK(o)) {
+ r->p = BIN_PTR(o);
+ r->sz = BIN_LEN(o);
return (1);
}
if (PyUnicode_Check(o)) {
assert(!PyErr_Occurred());
/* Format the explanation. */
- if (why) whyobj = PyString_FromFormatV(why, ap);
+ if (why) whyobj = TEXT_VFORMAT(why, ap);
else { whyobj = Py_None; Py_INCREF(whyobj); }
/* Find our home module's `lostexchook' function. This won't work if
* `sys.excepthook'.
*/
sys:
- PySys_WriteStderr("\n!!! LOST EXCEPTION: %s\n",
- PyString_AS_STRING(whyobj));
+ PySys_WriteStderr("\n!!! LOST EXCEPTION: %s\n", TEXT_PTR(whyobj));
RESTORE_EXCINFO(exc);
PyErr_Print();
/* drop through... */
COPY(buffer);
#undef COPY
if (name)
- ty->ht_name = PyString_FromString(name);
+ ty->ht_name = TEXT_FROMSTR(name);
else if (ty->ht_type.tp_name)
- ty->ht_name = PyString_FromString(ty->ht_type.tp_name);
+ ty->ht_name = TEXT_FROMSTR(ty->ht_type.tp_name);
+ else
+ ty->ht_name = 0;
if (ty->ht_name)
- ty->ht_type.tp_name = PyString_AS_STRING(ty->ht_name);
+ ty->ht_type.tp_name = TEXT_STR(ty->ht_name);
ty->ht_slots = 0;
(void)PyObject_INIT(&ty->ht_type, metaty);
Py_INCREF(metaty);
}
}
- if ((nameobj = PyString_FromFormat("%s.%s",
- PyModule_GetName(mod),
- name)) == 0 ||
- (exc = PyErr_NewException(PyString_AS_STRING(nameobj),
- base, dict)) == 0)
+ if ((nameobj = TEXT_FORMAT("%s.%s", PyModule_GetName(mod), name)) == 0 ||
+ (exc = PyErr_NewException(TEXT_STR(nameobj), base, dict)) == 0)
goto fail;
done: