Subject: bug#407: gpm server stop making emacs abort()

From: Stefan Monnier <[email-masked]>
Date: Fri, 12 Sep 2008 13:08:56 -0400

>>>> +      if (gpm < 0)
>>>> +	delete_gpm_wait_descriptor (gpm_fd);
>>>> if (hold_quit.kind != NO_EVENT)
>>>> kbd_buffer_store_event (&hold_quit);
>>>> if (nread)
>> 
>>> Works fine for me.
>> 
>> I've installed a similar patch.  It does not do (gpm-mouse-mode 0)
>> because I don't think it is safe at this point.  So there's probably
>> room for improvement, but it hopefully fixes the crashes.

> Indeed it fixes the crashes, but the room for improvement is rather
> large, as gpm-mouse-mode does not work at all now. :-(

Huh!  Indeed!  The condition "gpm < 0" is encountered all the time, so
my patch ends up turning gpm off right away.  But now I'm lost: I don't
understand what delete_gpm_wait_descriptor and add_gpm_wait_descriptor
do, because if I remove the call to add_gpm_wait_descriptor, the gpm
support seems to still work just fine.

Nick, do you have an idea what's going on?

        Stefan