diff options
| author | Guido van Rossum <guido@python.org> | 2007-10-15 02:52:41 +0000 | 
|---|---|---|
| committer | Guido van Rossum <guido@python.org> | 2007-10-15 02:52:41 +0000 | 
| commit | 00bc0e0a2d0b6c403a3c6ab96fa7d3398b5c751e (patch) | |
| tree | 34fda27260f18f813912d83a2cf060264a736190 /Python/compile.c | |
| parent | cdadf242ba32f1b3ef55e74d2eeb021e62da8041 (diff) | |
| download | cpython-git-00bc0e0a2d0b6c403a3c6ab96fa7d3398b5c751e.tar.gz | |
Patch #1272, by Christian Heimes and Alexandre Vassalotti.
Changes to make __file__ a proper Unicode object, using the default
filesystem encoding.
This is a bit tricky because the default filesystem encoding isn't
set by the time we import the first modules; at that point we fudge
things a bit.  This is okay since __file__ isn't really used much
except for error reporting.
Tested on OSX and Linux only so far.
Diffstat (limited to 'Python/compile.c')
| -rw-r--r-- | Python/compile.c | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/Python/compile.c b/Python/compile.c index d20da0af84..93087dba84 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -1247,7 +1247,7 @@ compiler_make_closure(struct compiler *c, PyCodeObject *co, int args)  				PyObject_REPR(name),   				PyString_AS_STRING(c->u->u_name),   				reftype, arg, -				PyString_AS_STRING(co->co_name), +				PyUnicode_AsString(co->co_name),  				PyObject_REPR(co->co_freevars));  			Py_FatalError("compiler_make_closure()");  		} @@ -4001,7 +4001,7 @@ makecode(struct compiler *c, struct assembler *a)  	freevars = dict_keys_inorder(c->u->u_freevars, PyTuple_Size(cellvars));  	if (!freevars)  	    goto error; -	filename = PyString_FromString(c->c_filename); +	filename = PyUnicode_DecodeFSDefault(c->c_filename);  	if (!filename)  		goto error;  | 
