From: Neal Norwitz Date: Mon, 5 Sep 2005 16:16:49 +0000 (+0000) Subject: break sets a breakpoint rather than stopping the loop. X-Git-Tag: v2.5a0~1403 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4655e44b0fa735fb7ce913a2591f0208e046a46b;p=python break sets a breakpoint rather than stopping the loop. It *appears* a flag is necessary instead. This was tested in gdb 6.0. Backport candidate --- diff --git a/Misc/gdbinit b/Misc/gdbinit index ee03cc2431..f3cb2ead06 100644 --- a/Misc/gdbinit +++ b/Misc/gdbinit @@ -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