bpo-26053: Fix args echoed by pdb run command (#22033)

This commit is contained in:
Irit Katriel 2021-04-01 16:25:59 +01:00 committed by GitHub
parent fcb55c0037
commit 652bfdee94
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 1 deletions

View File

@ -1708,7 +1708,7 @@ def main():
print("The program finished and will be restarted")
except Restart:
print("Restarting", mainpyfile, "with arguments:")
print("\t" + " ".join(args))
print("\t" + " ".join(sys.argv[1:]))
except SystemExit:
# In most cases SystemExit does not warrant a post-mortem session.
print("The program exited via sys.exit(). Exit status:", end=' ')

View File

@ -1443,6 +1443,19 @@ def bœr():
'Fail to handle a syntax error in the debuggee.'
.format(expected, stdout))
def test_issue26053(self):
# run command of pdb prompt echoes the correct args
script = "print('hello')"
commands = """
continue
run a b c
run d e f
quit
"""
stdout, stderr = self.run_pdb_script(script, commands)
output = '\n'.join([x.strip() for x in stdout.splitlines()])
self.assertIn("Restarting main.py with arguments:\na b c", output)
self.assertIn("Restarting main.py with arguments:\nd e f", output)
def test_readrc_kwarg(self):
script = textwrap.dedent("""

View File

@ -0,0 +1 @@
Fixed bug where the :mod:`pdb` interactive run command echoed the args from the shell command line, even if those have been overridden at the pdb prompt.