mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
__file__ used to be always set to the .pyc (or .pyo) file, even if
that file in fact did not exist or at least was not used. Change this so that __file__ is *only* set to the .pyc/.pyo file when it actually read the code object from it; otherwise __file__ is set to the .py file.
This commit is contained in:
parent
90f827c67e
commit
afd3daedde
1 changed files with 2 additions and 1 deletions
|
@ -706,6 +706,7 @@ load_source_module(name, pathname, fp)
|
|||
if (Py_VerboseFlag)
|
||||
fprintf(stderr, "import %s # precompiled from %s\n",
|
||||
name, cpathname);
|
||||
pathname = cpathname;
|
||||
}
|
||||
else {
|
||||
co = parse_source_module(pathname, fp);
|
||||
|
@ -716,7 +717,7 @@ load_source_module(name, pathname, fp)
|
|||
name, pathname);
|
||||
write_compiled_module(co, cpathname, mtime);
|
||||
}
|
||||
m = PyImport_ExecCodeModuleEx(name, (PyObject *)co, cpathname);
|
||||
m = PyImport_ExecCodeModuleEx(name, (PyObject *)co, pathname);
|
||||
Py_DECREF(co);
|
||||
|
||||
return m;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue