thecocce / pyscripter

Automatically exported from code.google.com/p/pyscripter
0 stars 0 forks source link

Stack frame position changes automatically to the last position after evaluating expression in the interpreter #461

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Let's say we have following program:

##----- code snippet start -----
def bar():
  x = 10 
  pass # put breakpoint here

def foo():
  x = 5
  bar()

foo()
##------ code snippet end -------

Run it in a debugger. The execution will stop on a line "pass" in "bar" 
function. Now in "Call stack" window select "foo" function. Switch to the 
"Python Interpreter" window, and evaluate value of "x". (Obviously, you will 
receive "5" as an answer). After this action the frame will change 
automatically to the highest position (where the breakpoint was hit), almost 
without any visual indication. And if you will now evaluate "x" again you will 
receive "10" this time. This is "magic" : from user perspective he just 
repeated his command and received two different answers.  

I suggest the following changes:
1) the frame stack will not change without specific user action
2) when user changes call stack frame position another indicator (green arrow 
for example) will appear in the code editor window. This way user will have 
additional prompt about his position in a call stack AND in a code.

What version of the product are you using? On what operating system?
2.4.1.0 on XP

Original issue reported on code.google.com by gri...@gmail.com on 29 Dec 2010 at 10:08

GoogleCodeExporter commented 9 years ago

Original comment by pyscripter on 31 May 2011 at 5:51

GoogleCodeExporter commented 9 years ago
Fixed in version control.

Original comment by pyscripter on 31 May 2011 at 10:13