[pypy-commit] pypy reverse-debugger: Fix location of the stop on backward watchpoints

arigo pypy.commits at gmail.com
Mon Jul 4 14:31:34 EDT 2016


Author: Armin Rigo <arigo at tunes.org>
Branch: reverse-debugger
Changeset: r85546:3c09a4bbcbc2
Date: 2016-07-04 20:32 +0200
http://bitbucket.org/pypy/pypy/changeset/3c09a4bbcbc2/

Log:	Fix location of the stop on backward watchpoints

diff --git a/rpython/translator/revdb/interact.py b/rpython/translator/revdb/interact.py
--- a/rpython/translator/revdb/interact.py
+++ b/rpython/translator/revdb/interact.py
@@ -191,7 +191,11 @@
                 kind, num, name))
         self.print_extra_pending_info = '\n'.join(printing)
         if self.pgroup.get_current_time() != b.time:
-            self.pgroup.jump_in_time(b.time)
+            target_time = b.time
+            if backward and any(self._bp_kind(num)[0] == 'watchpoint'
+                                for num in b.regular_breakpoint_nums()):
+                target_time += 1
+            self.pgroup.jump_in_time(target_time)
 
     def remove_tainting(self):
         if self.pgroup.is_tainted():


More information about the pypy-commit mailing list