emacs-devel
[Top][All Lists]
Advanced

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

Re: [Emacs-diffs] master 8ba156f: Attempt to avoid crashes in plist-memb


From: Andreas Schwab
Subject: Re: [Emacs-diffs] master 8ba156f: Attempt to avoid crashes in plist-member
Date: Tue, 13 Oct 2015 10:00:26 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Eli Zaretskii <address@hidden> writes:

>> From: Stefan Monnier <address@hidden>
>> Cc: Eli Zaretskii <address@hidden>
>> Date: Mon, 12 Oct 2015 21:07:00 -0400
>> 
>> >     Attempt to avoid crashes in plist-member
>>     
>> >     * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
>> >     and a call to XCDR.  (Bug#21655)
>> 
>> I have no objection to the patch itself, but I must say that I wonder
>> how it can avoid crashes.  IOW why would calling QUIT between a CONSP test
>> and a call to XCDR be dangerous?
>
> QUIT could call some Lisp.
>
> How else would you explain a segfault in that loop?

The only chance I see if garbage collection mistakenly collects the
referenced cell.  But that wouldn't be cured by the change.

Andreas.

-- 
Andreas Schwab, SUSE Labs, address@hidden
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."



reply via email to

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