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

From: Stephen Berman <[email-masked]>
Date: Wed, 18 Jun 2014 19:00:59 +0200

On Wed, 18 Jun 2014 20:24:21 +0400 Dmitry Antipov <[email-masked]> wrote:

> On 06/18/2014 08:00 PM, Stephen Berman wrote:
>
>> As I said in my followup to your patch, it did indeed prevent Emacs from
>> crashing, but with it C-g could not interrupt HELLO being displayed.
>
> This can be explained. To process C-g, C code should call QUIT. If we
> compare it with OS, this is something like "check for pending interrupts
> and process them if needed". That's why, for example, (make-list 10000000 0)
> can be interrupted with C-g. Emacs do QUIT in its own C code, but it's
> impossible to arrange QUIT in external library. So, if there is a
> very busy loop somewhere in fontconfig, you can't interrupt it with C-g.

I see.  Well, having Emacs crash is certainly worse than not being able
to interrupt fontconfig, so I think you should commit the patch, and
then as far as I'm concerned, this bug can be closed.

Steve Berman