diff options
author | Terry Jan Reedy <tjreedy@udel.edu> | 2013-06-30 23:07:49 (GMT) |
---|---|---|
committer | Terry Jan Reedy <tjreedy@udel.edu> | 2013-06-30 23:07:49 (GMT) |
commit | b6eeef4165a616443b01a948c0997ca7695d6a4a (patch) | |
tree | 8a68feb3a548be7c86090fdd8d03a3d2bfe4ad89 /Lib/idlelib/ScriptBinding.py | |
parent | d1caae86e50de65df4786d8fa56622533b82a40a (diff) | |
download | cpython-b6eeef4165a616443b01a948c0997ca7695d6a4a.zip cpython-b6eeef4165a616443b01a948c0997ca7695d6a4a.tar.gz cpython-b6eeef4165a616443b01a948c0997ca7695d6a4a.tar.bz2 |
Issue #8515: Set __file__ when run file in IDLE. Backport 2c276d0553ff by
Andrew Svetlov, based on initial patch by Bruce Frederiksen.
Diffstat (limited to 'Lib/idlelib/ScriptBinding.py')
-rw-r--r-- | Lib/idlelib/ScriptBinding.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/Lib/idlelib/ScriptBinding.py b/Lib/idlelib/ScriptBinding.py index a1d5aaf..665b3b2 100644 --- a/Lib/idlelib/ScriptBinding.py +++ b/Lib/idlelib/ScriptBinding.py @@ -152,16 +152,16 @@ class ScriptBinding: dirname = os.path.dirname(filename) # XXX Too often this discards arguments the user just set... interp.runcommand("""if 1: - _filename = %r + __file__ = {filename!r} import sys as _sys from os.path import basename as _basename if (not _sys.argv or - _basename(_sys.argv[0]) != _basename(_filename)): - _sys.argv = [_filename] + _basename(_sys.argv[0]) != _basename(__file__)): + _sys.argv = [__file__] import os as _os - _os.chdir(%r) - del _filename, _sys, _basename, _os - \n""" % (filename, dirname)) + _os.chdir({dirname!r}) + del _sys, _basename, _os + \n""".format(filename=filename, dirname=dirname)) interp.prepend_syspath(filename) # XXX KBK 03Jul04 When run w/o subprocess, runtime warnings still # go to __stderr__. With subprocess, they go to the shell. |