Commit f17361d3 authored by Guido van Rossum's avatar Guido van Rossum

Two changes suggested by Andrew Kuchling:

- move compile() inside try-except
- add code so you can do "python pdb.py <script> <arg> ..." to debug <script>
parent 81749b07
#! /usr/local/bin/python
# pdb.py -- finally, a Python debugger!
# (See pdb.doc for documentation.)
......@@ -74,8 +76,8 @@ class Pdb(bdb.Bdb, cmd.Cmd):
locals = self.curframe.f_locals
globals = self.curframe.f_globals
globals['__privileged__'] = 1
code = compile(line + '\n', '<stdin>', 'single')
try:
code = compile(line + '\n', '<stdin>', 'single')
exec code in globals, locals
except:
if type(sys.exc_type) == type(''):
......@@ -490,3 +492,17 @@ def help():
else:
print 'Sorry, can\'t find the help file "pdb.doc"',
print 'along the Python search path'
# When invoked as main program, invoke the debugger on a script
if __name__=='__main__':
import sys
if not sys.argv[1:]:
print "usage: pdb.py scriptfile [arg] ..."
sys.exit(2)
# Get the module name and function name, if present
filename = sys.argv[1]
del sys.argv[0]
run('execfile(' + `filename` + ')', {'__name__': '__main__'})
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment