bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#23462: 25.0.93; Crash on OS X when suspending main frame


From: Alan Third
Subject: bug#23462: 25.0.93; Crash on OS X when suspending main frame
Date: Wed, 11 May 2016 23:28:24 +0100
User-agent: Mutt/1.5.24 (2015-08-30)

On Tue, May 10, 2016 at 11:57:47PM +0200, Anders Lindgren wrote:
>
> As far as I can tell, I don't see a better location to place the test. (I
> have to include myself in the group who have no idea why drawRect is being
> called when the frame is miniatured.) I would suggest that we add it as you
> originally suggested.
> 
> Alan, what do you say? Have you looked into this?

Right, on a hunch that it's something to do with Emacs receiving and
processing signals or input of some sort during or immediately after
minimization, I tried wrapping

    [[view window] miniaturize: NSApp];

in x_iconify_frame with block_input and unblock_input:

    block_input();
    [[view window] miniaturize: NSApp];
    unblock_input();

which seems to have solved the crash.

I'm not super-happy with this as the error message implies that
something is being created in Objective C, then either clobbered or
released elsewhere, *then* Objective C tries to release it
automatically and it's already clobbered/gone. But I can't trace it
back to find out what's actually going on. It appears to be related to
unblock_input forcing the processing of "pending" signals or input
when drawRect runs, but why is that breaking Objective C's garbage
collection routines?

I guess it probably doesn't matter, as long as it works.
-- 
Alan Third





reply via email to

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