mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
Merged revisions 78875 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r78875 | victor.stinner | 2010-03-12 18:00:41 +0100 (ven., 12 mars 2010) | 5 lines Issue #6697: use %U format instead of _PyUnicode_AsString(), because _PyUnicode_AsString() was not checked for error (NULL). The unicode string is no more truncated to 200 or 400 *bytes*. ........
This commit is contained in:
parent
19495a7adc
commit
38c36f8576
6 changed files with 19 additions and 20 deletions
|
@ -288,10 +288,7 @@ static PyGetSetDef EVP_getseters[] = {
|
|||
static PyObject *
|
||||
EVP_repr(EVPobject *self)
|
||||
{
|
||||
char buf[100];
|
||||
PyOS_snprintf(buf, sizeof(buf), "<%s HASH object @ %p>",
|
||||
_PyUnicode_AsString(self->name), self);
|
||||
return PyUnicode_FromString(buf);
|
||||
return PyUnicode_FromFormat("<%U HASH object @ %p>", self->name, self);
|
||||
}
|
||||
|
||||
#if HASH_OBJ_CONSTRUCTOR
|
||||
|
|
|
@ -321,15 +321,12 @@ zipimporter_load_module(PyObject *obj, PyObject *args)
|
|||
/* add __path__ to the module *before* the code gets
|
||||
executed */
|
||||
PyObject *pkgpath, *fullpath;
|
||||
char *prefix = _PyUnicode_AsString(self->prefix);
|
||||
char *subname = get_subname(fullname);
|
||||
int err;
|
||||
|
||||
fullpath = PyUnicode_FromFormat("%s%c%s%s",
|
||||
_PyUnicode_AsString(self->archive),
|
||||
SEP,
|
||||
prefix ? prefix : "",
|
||||
subname);
|
||||
fullpath = PyUnicode_FromFormat("%U%c%U%s",
|
||||
self->archive, SEP,
|
||||
self->prefix, subname);
|
||||
if (fullpath == NULL)
|
||||
goto error;
|
||||
|
||||
|
|
|
@ -295,9 +295,9 @@ func_set_code(PyFunctionObject *op, PyObject *value)
|
|||
PyTuple_GET_SIZE(op->func_closure));
|
||||
if (nclosure != nfree) {
|
||||
PyErr_Format(PyExc_ValueError,
|
||||
"%s() requires a code object with %zd free vars,"
|
||||
"%U() requires a code object with %zd free vars,"
|
||||
" not %zd",
|
||||
_PyUnicode_AsString(op->func_name),
|
||||
op->func_name,
|
||||
nclosure, nfree);
|
||||
return -1;
|
||||
}
|
||||
|
|
|
@ -1295,10 +1295,15 @@ check_duplicates(PyObject *list)
|
|||
for (j = i + 1; j < n; j++) {
|
||||
if (PyList_GET_ITEM(list, j) == o) {
|
||||
o = class_name(o);
|
||||
PyErr_Format(PyExc_TypeError,
|
||||
"duplicate base class %.400s",
|
||||
o ? _PyUnicode_AsString(o) : "?");
|
||||
Py_XDECREF(o);
|
||||
if (o != NULL) {
|
||||
PyErr_Format(PyExc_TypeError,
|
||||
"duplicate base class %U",
|
||||
o);
|
||||
Py_DECREF(o);
|
||||
} else {
|
||||
PyErr_SetString(PyExc_TypeError,
|
||||
"duplicate base class");
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3883,10 +3883,10 @@ update_keyword_args(PyObject *orig_kwdict, int nk, PyObject ***pp_stack,
|
|||
if (PyDict_GetItem(kwdict, key) != NULL) {
|
||||
PyErr_Format(PyExc_TypeError,
|
||||
"%.200s%s got multiple values "
|
||||
"for keyword argument '%.200s'",
|
||||
"for keyword argument '%U'",
|
||||
PyEval_GetFuncName(func),
|
||||
PyEval_GetFuncDesc(func),
|
||||
_PyUnicode_AsString(key));
|
||||
key);
|
||||
Py_DECREF(key);
|
||||
Py_DECREF(value);
|
||||
Py_DECREF(kwdict);
|
||||
|
|
|
@ -2694,8 +2694,8 @@ PyImport_ReloadModule(PyObject *m)
|
|||
parent = PyDict_GetItem(modules, parentname);
|
||||
if (parent == NULL) {
|
||||
PyErr_Format(PyExc_ImportError,
|
||||
"reload(): parent %.200s not in sys.modules",
|
||||
_PyUnicode_AsString(parentname));
|
||||
"reload(): parent %U not in sys.modules",
|
||||
parentname);
|
||||
Py_DECREF(parentname);
|
||||
imp_modules_reloading_clear();
|
||||
return NULL;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue