bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-20.7 loops forever in compact_strings


From: Colin Walters
Subject: emacs-20.7 loops forever in compact_strings
Date: 04 Mar 2001 15:06:19 -0500
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.0.98

Hello,

I have some code which causes emacs 20.7 to sit forever in this while
loop (note I have to hit 'c' twice to actually get GDB to continue on
my system, for some reason...)

(gdb) r -q
Starting program: /usr/src/emacs-20.7/src/emacs -q

Program received signal SIGTSTP, Stopped (user).
0x080e1000 in compact_strings () at alloc.c:2848
2848                    }
(gdb) list
2843                  while (((EMACS_UINT) size & ~DONT_COPY_FLAG) > 
STRING_BLOCK_SIZE)
2844                    {
2845                      if (size & DONT_COPY_FLAG)
2846                        size ^= MARKBIT | DONT_COPY_FLAG;
2847                      size = *(EMACS_INT *)size & ~MARKBIT;
2848                    }
2849
2850                  if (size_byte < 0)
2851                    size_byte = size;
2852
(gdb) p size
$1 = 137621204
(gdb) c
Continuing.

Program received signal SIGTSTP, Stopped (user).
0x080e1000 in compact_strings () at alloc.c:2848
2848                    }
(gdb) c
Continuing.

Program received signal SIGTSTP, Stopped (user).
0x080e1000 in compact_strings () at alloc.c:2848
2848                    }
(gdb) p size
$2 = 136352208
(gdb) c
Continuing.

Program received signal SIGTSTP, Stopped (user).
0x080e1000 in compact_strings () at alloc.c:2848
2848                    }
(gdb) c
Continuing.

Program received signal SIGTSTP, Stopped (user).
0x080e0ff9 in compact_strings () at alloc.c:2848
2848                    }
(gdb) p size
$3 = 137621204
(gdb) c
Continuing.

Program received signal SIGTSTP, Stopped (user).
0x080e0ff9 in compact_strings () at alloc.c:2848
2848                    }
(gdb) c
Continuing.

Program received signal SIGTSTP, Stopped (user).
0x080e0ffb in compact_strings () at alloc.c:2848
2848                    }
(gdb) p size
$4 = 136352208
(gdb) 

But I can't seem to narrow the problem to a simple test case.  The
whole code is available at:

<URL:http://www.cis.ohio-state.edu/~walters/ibuffer.el>

I can reproduce this every time on the machines I own (all ia32
machines, at the moment) by doing:

./emacs -q --no-site-file -l /usr/src/cvs/ibuffer/ibuffer.el -f ibuffer

And then doing 't' twice.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]