Small improvements to pstats browser: do not crash on reading invalid file, and actually do a reload when executing "read" as intended.

This commit is contained in:
Georg Brandl 2010-08-01 07:57:47 +00:00
parent 3e4f2ec704
commit f02e7367eb
1 changed files with 9 additions and 1 deletions

View File

@ -614,14 +614,19 @@ if __name__ == '__main__':
except IOError as err: except IOError as err:
print(err.args[1], file=self.stream) print(err.args[1], file=self.stream)
return return
except Exception as err:
print(err.__class__.__name__ + ':', err, file=self.stream)
return
self.prompt = line + "% " self.prompt = line + "% "
elif len(self.prompt) > 2: elif len(self.prompt) > 2:
line = self.prompt[-2:] line = self.prompt[:-2]
self.do_read(line)
else: else:
print("No statistics object is current -- cannot reload.", file=self.stream) print("No statistics object is current -- cannot reload.", file=self.stream)
return 0 return 0
def help_read(self): def help_read(self):
print("Read in profile data from a specified file.", file=self.stream) print("Read in profile data from a specified file.", file=self.stream)
print("Without argument, reload the current file.", file=self.stream)
def do_reverse(self, line): def do_reverse(self, line):
if self.stats: if self.stats:
@ -664,6 +669,9 @@ if __name__ == '__main__':
def help_strip(self): def help_strip(self):
print("Strip leading path information from filenames in the report.", file=self.stream) print("Strip leading path information from filenames in the report.", file=self.stream)
def help_help(self):
print("Show help for a given command.", file=self.stream)
def postcmd(self, stop, line): def postcmd(self, stop, line):
if stop: if stop:
return stop return stop