Skip to content

Pdb crashes after jump with Fatal Python error: _PyMem_DebugRawFree: bad trailing pad byte #91742

@komoto48g

Description

@komoto48g

Crash report

Access violation occurs when using pdb in the following procedure:

  1. step in a function
  2. step next a few lines inside print function
  3. before exiting print function, jump to the beginning of the code
  4. continue
Code Example [test_pdb.py] (click to expand)
__author__ = "pi" __version__ = "3.14" def about(): """About""" print(f"Module: {__file__!r}", f"Author: {__author__!r}", f"Version: {__version__!r}", sep='\n') breakpoint() about()

Error messages

$ python -Wd -Xdev -Xtracemalloc test_pdb.py

> test_pdb.py(12)<module>() -> about() (Pdb) s --Call-- > test_pdb.py(4)about() -> def about(): (Pdb) n > test_pdb.py(6)about() -> print(f"Module: {__file__!r}", (Pdb) n > test_pdb.py(7)about() -> f"Author: {__author__!r}", (Pdb) j 4 > test_pdb.py(4)about() -> def about(): (Pdb) c Module: 'test_pdb.py' Author: 'pi' Version: '3.14' Debug memory block at address p=0000021D17AD8CF0: API 'o' 432 bytes originally requested The 7 pad bytes at p-7 are FORBIDDENBYTE, as expected. The 8 pad bytes at tail=0000021D17AD8EA0 are not all FORBIDDENBYTE (0xfd): at tail+0: 0x90 *** OUCH at tail+1: 0x46 *** OUCH at tail+2: 0x05 *** OUCH at tail+3: 0x17 *** OUCH at tail+4: 0x1d *** OUCH at tail+5: 0x02 *** OUCH at tail+6: 0x00 *** OUCH at tail+7: 0x00 *** OUCH Data at p: 00 00 00 00 00 00 00 00 ... f0 b4 b5 16 1d 02 00 00 Memory block allocated at (most recent call first): File "test_pdb.py", line 12 Fatal Python error: _PyMem_DebugRawFree: bad trailing pad byte Python runtime state: finalizing (tstate=0000021D169BEA10) Current thread 0x000033f0 (most recent call first): <no Python frame> 

Your environment

  • CPython versions tested on: 3.10.4
  • Operating system and architecture: Windows10 64bit

Metadata

Metadata

Assignees

Labels

3.10only security fixestype-crashA hard crash of the interpreter, possibly with a core dump

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions