diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2010-03-12 17:00:41 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2010-03-12 17:00:41 (GMT) |
commit | 3f1af5c42e915775e9cc32224e090b05430a23de (patch) | |
tree | 0456ab762d139e628bc6e559291854a1a01a3feb /Modules/zipimport.c | |
parent | 50981b8242af6a456cf17e39df6a12b0f98524df (diff) | |
download | cpython-3f1af5c42e915775e9cc32224e090b05430a23de.zip cpython-3f1af5c42e915775e9cc32224e090b05430a23de.tar.gz cpython-3f1af5c42e915775e9cc32224e090b05430a23de.tar.bz2 |
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*.
Diffstat (limited to 'Modules/zipimport.c')
-rw-r--r-- | Modules/zipimport.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/Modules/zipimport.c b/Modules/zipimport.c index 770f18f..fed3e99 100644 --- a/Modules/zipimport.c +++ b/Modules/zipimport.c @@ -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; |