]> granicus.if.org Git - python/commitdiff
break sets a breakpoint rather than stopping the loop.
authorNeal Norwitz <nnorwitz@gmail.com>
Mon, 5 Sep 2005 16:16:49 +0000 (16:16 +0000)
committerNeal Norwitz <nnorwitz@gmail.com>
Mon, 5 Sep 2005 16:16:49 +0000 (16:16 +0000)
It *appears* a flag is necessary instead.
This was tested in gdb 6.0.

Backport candidate

Misc/gdbinit

index ee03cc2431a63a9e21357312a6ed87a2c8d8e927..f3cb2ead060b3b847ec9e2bdb340f8159c11e515 100644 (file)
@@ -46,18 +46,19 @@ end
 # A rewrite of the Python interpreter's line number calculator in GDB's
 # command language
 define lineno
+    set $__continue = 1
     set $__co = f->f_code
     set $__lasti = f->f_lasti
     set $__sz = ((PyStringObject *)$__co->co_lnotab)->ob_size/2
     set $__p = (unsigned char *)((PyStringObject *)$__co->co_lnotab)->ob_sval
     set $__li = $__co->co_firstlineno
     set $__ad = 0
-    while ($__sz-1 >= 0)
+    while ($__sz-1 >= 0 && $__continue)
       set $__sz = $__sz - 1
       set $__ad = $__ad + *$__p
       set $__p = $__p + 1
       if ($__ad > $__lasti)
-       break
+       set $__continue = 0
       end
       set $__li = $__li + *$__p
       set $__p = $__p + 1