[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: infinite loop with show-paren-mode turned on
From: |
Satyaki Das |
Subject: |
Re: infinite loop with show-paren-mode turned on |
Date: |
Mon, 21 Jul 2003 13:16:26 -0700 |
Richard Stallman <address@hidden> writes:
> Can you please follow the suggestions in etc/DEBUG for how
> to debug an infinite loop? With that info we might make headway.
OK, here is more info. I had actually done it earlier but forgot
to attach it to the last mail:
The infinite loop is in the function overlays_at (in buffer.c line
2432). The loop is the for loop starting on line 2501 (the second
for loop in the function) that starts with:
for (tail = current_buffer->overlays_after; tail; tail = tail->next)
The loop never terminates since current_buffer->overlays_after is
a circular link list as demonstrated by the following gdb snippet:
Program received signal SIGTSTP, Stopped (user).
0x080eaf02 in overlays_at (pos=18, extend=0, vec_ptr=0xbfffc924,
len_ptr=0xbfffc928, next_ptr=0xbfffc92c, prev_ptr=0x0, change_req=0) at
buffer.c:2509
2509 startpos = OVERLAY_POSITION (start);
(gdb) print current_buffer->overlays_after
$11 = (struct Lisp_Overlay *) 0x8458360
(gdb) print current_buffer->overlays_after->next
$12 = (struct Lisp_Overlay *) 0x84583c4
(gdb) print current_buffer->overlays_after->next->next
$13 = (struct Lisp_Overlay *) 0x8458360
(gdb)
Satyaki