GNU bug report logs - #18438
24.4.50; assertion failed in bidi.c

Previous Next

Package: emacs;

Reported by: aidalgol <at> amuri.net

Date: Tue, 9 Sep 2014 21:52:01 UTC

Severity: normal

Tags: moreinfo

Merged with 17817

Found in versions 24.3.91, 24.4.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #190 received at 18438 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Ken Brown <kbrown <at> cornell.edu>
Cc: 18438 <at> debbugs.gnu.org, aidalgol <at> amuri.net
Subject: Re: bug#18438: 24.4.50; assertion failed in bidi.c
Date: Thu, 16 Oct 2014 16:38:13 +0300
> Date: Thu, 16 Oct 2014 09:11:18 -0400
> From: Ken Brown <kbrown <at> cornell.edu>
> CC: 18438 <at> debbugs.gnu.org
> 
> On 10/16/2014 3:27 AM, Eli Zaretskii wrote:
> > Let's try to get a couple more full backtraces like this one, in case
> > some pattern emerges that could give us some ideas.
> 
> I saw some things in Thread 7 (the Windows message queue thread), especially 
> frame #14, which got me to look at the code for w32_wnd_proc in w32fns.c.  The 
> code is about 1300 lines long, and includes several comments about why it is 
> thread-safe.  Here are a few examples:
> 
>       Walking the frame list in this thread is safe (as long as
>       writes of Lisp_Object slots are atomic, which they are on Windows).
> 
>       It is also safe to use functions that make GDI calls, such as
>       w32_clear_rect, because these functions must obtain a DC handle
>       from the frame struct using get_frame_dc which is thread-aware.
> 
>       The code below does something that one shouldn't do: it
>       accesses the window object from a separate thread, while the
>       main (a.k.a. "Lisp") thread runs and can legitimately delete
>       and even GC it.  That is why we are extra careful...
> 
> I wonder if something in these 1300 lines is not thread-safe on Cygwin.  For 
> example, I don't know if it's true on Cygwin that "writes of Lisp_Object slots 
> are atomic".

I will take a look, thanks.




This bug report was last modified 9 years and 154 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.