8000 bpo-43318: Fix a bug where pdb does not always echo cleared breakpoin… · python/cpython@6df926f · GitHub
[go: up one dir, main page]

Skip to content

Commit 6df926f

Browse files
bpo-43318: Fix a bug where pdb does not always echo cleared breakpoints (GH-24646) (GH-26675)
(cherry picked from commit 4cb6ba1) Co-authored-by: huzhaojie <hu.zj@foxmail.com>
1 parent e972631 commit 6df926f

File tree

3 files changed

+31
-1
lines changed

3 files changed

+31
-1
lines changed

Lib/pdb.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -893,7 +893,7 @@ def do_clear(self, arg):
893893
except ValueError:
894894
err = "Invalid line number (%s)" % arg
895895
else:
896-
bplist = self.get_breaks(filename, lineno)
896+
bplist = self.get_breaks(filename, lineno)[:]
897897
err = self.clear_break(filename, lineno)
898898
if err:
899899
self.error(err)

Lib/test/test_pdb.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1259,6 +1259,35 @@ def test_pdb_issue_20766():
12591259
pdb 2: <built-in function default_int_handler>
12601260
"""
12611261

1262+
def test_pdb_issue_43318():
1263+
"""echo breakpoints cleared with filename:lineno
1264+
1265+
>>> def test_function():
1266+
... import pdb; pdb.Pdb(nosigint=True, readrc=False).set_trace()
1267+
... print(1)
1268+
... print(2)
1269+
... print(3)
1270+
... print(4)
1271+
>>> reset_Breakpoint()
1272+
>>> with PdbTestInput([ # doctest: +NORMALIZE_WHITESPACE
1273+
... 'break 3',
1274+
... 'clear <doctest test.test_pdb.test_pdb_issue_43318[0]>:3',
1275+
... 'continue'
1276+
... ]):
1277+
... test_function()
1278+
> <doctest test.test_pdb.test_pdb_issue_43318[0]>(3)test_function()
1279+
-> print(1)
1280+
(Pdb) break 3
1281+
Breakpoint 1 at <doctest test.test_pdb.test_pdb_issue_43318[0]>:3
1282+
(Pdb) clear <doctest test.test_pdb.test_pdb_issue_43318[0]>:3
1283+
Deleted breakpoint 1 at <doctest test.test_pdb.test_pdb_issue_43318[0]>:3
1284+
(Pdb) continue
1285+
1
1286+
2
1287+
3
1288+
4
1289+
"""
1290+
12621291

12631292
class PdbTestCase(unittest.TestCase):
12641293
def tearDown(self):
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Fix a bug where :mod:`pdb` does not always echo cleared breakpoints.

0 commit comments

Comments
 (0)
0