[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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- emacs-20.7 loops forever in compact_strings,
Colin Walters <=