gh-120606: Allow EOF to exit pdb commands definition (#120607)

This commit is contained in:
Tian Gao 2024-06-19 15:50:26 -07:00 committed by GitHub
parent 1e4815692f
commit 4bbb0273f2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 9 additions and 0 deletions

View File

@ -860,6 +860,9 @@ class Pdb(bdb.Bdb, cmd.Cmd):
return False # continue to handle other cmd def in the cmd list return False # continue to handle other cmd def in the cmd list
elif cmd == 'end': elif cmd == 'end':
return True # end of cmd list return True # end of cmd list
elif cmd == 'EOF':
print('')
return True # end of cmd list
cmdlist = self.commands[self.commands_bnum] cmdlist = self.commands[self.commands_bnum]
if arg: if arg:
cmdlist.append(cmd+' '+arg) cmdlist.append(cmd+' '+arg)

View File

@ -258,6 +258,8 @@ def test_pdb_breakpoint_commands():
... 'clear 3', ... 'clear 3',
... 'break', ... 'break',
... 'condition 1', ... 'condition 1',
... 'commands 1',
... 'EOF', # Simulate Ctrl-D/Ctrl-Z from user, should end input
... 'enable 1', ... 'enable 1',
... 'clear 1', ... 'clear 1',
... 'commands 2', ... 'commands 2',
@ -313,6 +315,9 @@ def test_pdb_breakpoint_commands():
2 breakpoint keep yes at <doctest test.test_pdb.test_pdb_breakpoint_commands[0]>:4 2 breakpoint keep yes at <doctest test.test_pdb.test_pdb_breakpoint_commands[0]>:4
(Pdb) condition 1 (Pdb) condition 1
Breakpoint 1 is now unconditional. Breakpoint 1 is now unconditional.
(Pdb) commands 1
(com) EOF
<BLANKLINE>
(Pdb) enable 1 (Pdb) enable 1
Enabled breakpoint 1 at <doctest test.test_pdb.test_pdb_breakpoint_commands[0]>:3 Enabled breakpoint 1 at <doctest test.test_pdb.test_pdb_breakpoint_commands[0]>:3
(Pdb) clear 1 (Pdb) clear 1

View File

@ -0,0 +1 @@
Allow users to use EOF to exit ``commands`` definition in :mod:`pdb`