Subject: Re: bug#17771: 24.3.91; SIGSEGV in cleanup_vector

From: Stephen Berman <[email-masked]>
Date: Fri, 13 Jun 2014 14:39:42 +0200

On Fri, 13 Jun 2014 15:19:50 +0300 Eli Zaretskii <[email-masked]> wrote:

>> From: Stephen Berman <[email-masked]>
>> Cc: [email-masked]
>> Date: Fri, 13 Jun 2014 11:50:59 +0200
>> 
>> On Fri, 13 Jun 2014 12:41:56 +0300 Eli Zaretskii <[email-masked]> wrote:
>> 
>> >> From: Stephen Berman <[email-masked]>
>> >> Date: Fri, 13 Jun 2014 11:12:44 +0200
>> >> 
>> >> 
>> >> 0. emacs -Q
>> >> 1. C-h h (on my machine, it takes ~30 seconds for the Hello file to
>> >>    appear; during that time, do the following:)
>> >> 2. Type C-g repeatedly (I did it rapidly, for ~15 seconds).
>> >> 3. Emacs crashes, full backtrace below.  (This is reliably reproducible.)
>> >
>> > Not here, but this is Windows, where input is treated very
>> > differently.
>> >
>> >> Program received signal SIGSEGV, Segmentation fault.
>> >> 0x00000000005aa564 in cleanup_vector (vector=0x43b4ea8)
>> >>     at ../../../../bzr/emacs/emacs-24/src/alloc.c:2929
>> >> 2929          ((struct font *) vector)->driver->close ((struct font *) vector);
>> >
>> > So which one is the bad pointer, vector, vector->driver, or
>> > vector->driver->close?
>> 
>> If you're asking me, can you tell me what to type in gdb to find out?
>
>  (gdb) p vector
>  (gdb) p vector->driver
>  (gdb) p vector->driver->close
>
> Thanks.

Program received signal SIGSEGV, Segmentation fault.
0x00000000005aa564 in cleanup_vector (vector=0x413c318)
    at ../../../../bzr/emacs/emacs-24/src/alloc.c:2929
2929          ((struct font *) vector)->driver->close ((struct font *) vector);
(gdb) p vector
$1 = (struct Lisp_Vector *) 0x413c318
(gdb) p vector->driver
There is no member named driver.
(gdb) p vector->driver->close
There is no member named driver.