[Python-Dev] Changing a value in a frame (for a debugger) (original) (raw)
Phillip J. Eby pje at telecommunity.com
Wed Feb 7 18:47:00 CET 2007
- Previous message: [Python-Dev] Changing a value in a frame (for a debugger)
- Next message: [Python-Dev] Why is nb_inplace_power ternary?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
At 08:11 AM 2/7/2007 -0200, Fabio Zadrozny wrote:
Would it be ok to add a feature request for that? I initially thought it was completely read-only, but I find it strange that it affects the topmost frame correctly (so, it seems that even though I get a copy, when I alter that copy on the topmost frame it affects it correctly)... anyone has a clue why that happens?
The code that calls the debugging hook calls PyFrame_FastToLocals() before invoking the debugger, and then PyFrame_LocalsToFast() afterwards. Thus, the interrupted frame can have its locals modified, but no others can.
In order for this to work on other frames, you'd have to explicitly call PyFrame_FastToLocals(frame, 1) -- which you could probably do with ctypes or a C extension.
- Previous message: [Python-Dev] Changing a value in a frame (for a debugger)
- Next message: [Python-Dev] Why is nb_inplace_power ternary?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]