This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author xdegaye
Recipients xdegaye
Date 2012-05-05.10:43:43
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1336214625.48.0.950841547459.issue14728@psf.upfronthosting.co.za>
In-reply-to
Content
The issue 13183 raises the problem that when the trace function is not
set in the caller frame, the step command fails at a return statement.

This new issue raises the point that, for the same reason:

    * the next, until and return statements fail also at a return
      statement when the caller frame does not have a trace function

    * when the user runs the up and down commands at any line in a
      frame to select a new frame, then the next, until or return
      commands fail when the selected frame does not have a trace
      function

The attached patch fixes all those problems (by first removing the
changes made in bdb.py at issue 13183).

After the patch, the implementation ensures now that self.stopframe is
either None, or belongs to the stack frame in the interval
[self.botframe, self._curframe] and that it is set to self.botframe
when the debugging session terminates. This allows removing the while
loop in stop_here with an improvement in the performance of Pdb (since
stop_here may be called at each line, even when no breakpoint is set
in the function).

The patch applies to the default branch and includes 5 new test cases.
A patch for 2.7 will be submitted later.
History
Date User Action Args
2012-05-05 10:43:45xdegayesetrecipients: + xdegaye
2012-05-05 10:43:45xdegayesetmessageid: <1336214625.48.0.950841547459.issue14728@psf.upfronthosting.co.za>
2012-05-05 10:43:44xdegayelinkissue14728 messages
2012-05-05 10:43:44xdegayecreate