On 16 Dec 2016 12:24 am, "Eli Zaretskii" wrote: > From: Elias Mårtenson > Date: Thu, 15 Dec 2016 11:30:54 +0800 > Cc: Clément Pit--Claudel , > 25172@debbugs.gnu.org > > After applying that patch, it hasn't crashed yet. So either it fixes the problem, or it's simply buch harder to > reproduce. So far so good. Thanks a lot! > > I want to note that the thing that seems to fix it is the application of the most recent suggestion. Thanks, I pushed it now. > In other words, if I roll back the application of the previous > suggestion (removing the calls to clock_input ()/unblock_input()) it > still seems to be stable. Yes, it turns out acquiring Glib context is thread-safe (it uses a mutex internally), so only one thread can ever acquire it. Not calling Glib functions when we failed to acquire context avoids both the crashes in Glib and calling block_input/unblock_input from more than one thread. I guess we can now close this bug? Yes, I think so. Thanks so much for your help in debugging this. I'm happy it was resolved. ☺️