mirror of
https://github.com/python/cpython.git
synced 2025-07-29 06:05:00 +00:00
Merged revisions 83393,83396,83398,83404-83405,83408 via svnmerge from
svn+ssh://svn.python.org/python/branches/py3k ........ r83393 | georg.brandl | 2010-08-01 10:35:29 +0200 (So, 01 Aug 2010) | 1 line #1690103: fix initial namespace for code run with trace.main(). ........ r83396 | georg.brandl | 2010-08-01 10:52:32 +0200 (So, 01 Aug 2010) | 1 line #4810: document "--" option separator in timeit help. ........ r83398 | georg.brandl | 2010-08-01 11:06:34 +0200 (So, 01 Aug 2010) | 1 line #8826: the "expires" attribute value is a date string with spaces, but apparently not all user-agents put it in quotes. Handle that as a special case. ........ r83404 | georg.brandl | 2010-08-01 16:25:22 +0200 (So, 01 Aug 2010) | 1 line #6439: fix argument type for PySys_SetArgvEx() and Py_SetProgramName() in Demo/embed code. ........ r83405 | georg.brandl | 2010-08-01 16:38:17 +0200 (So, 01 Aug 2010) | 1 line #4943: do not try to include drive letters (and colons) when looking for a probably module name. ........ r83408 | georg.brandl | 2010-08-01 17:30:56 +0200 (So, 01 Aug 2010) | 1 line #5551: symbolic links never can be mount points. Fixes the fix for #1713. ........
This commit is contained in:
parent
afef78f832
commit
cea7e55998
9 changed files with 81 additions and 20 deletions
13
Lib/trace.py
13
Lib/trace.py
|
@ -192,11 +192,13 @@ def fullmodname(path):
|
|||
base = path[len(longest) + 1:]
|
||||
else:
|
||||
base = path
|
||||
# the drive letter is never part of the module name
|
||||
drive, base = os.path.splitdrive(base)
|
||||
base = base.replace(os.sep, ".")
|
||||
if os.altsep:
|
||||
base = base.replace(os.altsep, ".")
|
||||
filename, ext = os.path.splitext(base)
|
||||
return filename
|
||||
return filename.lstrip(".")
|
||||
|
||||
class CoverageResults:
|
||||
def __init__(self, counts=None, calledfuncs=None, infile=None,
|
||||
|
@ -799,7 +801,14 @@ def main(argv=None):
|
|||
try:
|
||||
with open(progname) as fp:
|
||||
code = compile(fp.read(), progname, 'exec')
|
||||
t.run(code)
|
||||
# try to emulate __main__ namespace as much as possible
|
||||
globs = {
|
||||
'__file__': progname,
|
||||
'__name__': '__main__',
|
||||
'__package__': None,
|
||||
'__cached__': None,
|
||||
}
|
||||
t.runctx(code, globs, globs)
|
||||
except IOError as err:
|
||||
_err_exit("Cannot run file %r because: %s" % (sys.argv[0], err))
|
||||
except SystemExit:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue