[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#407: gpm server stop making emacs abort()
From: |
Sven Joachim |
Subject: |
bug#407: gpm server stop making emacs abort() |
Date: |
Tue, 01 Jul 2008 22:43:40 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) |
[ Stefan, it seems you inadvertently forgot to CC the bug submitter,
which is why you did not get an answer from him.]
On 2008-06-14 00:18 +0200, Stefan Monnier wrote:
>> If running with
>> (gpm-mouse-mode 1)
>> and if you stop the gpm server, then emacs dies with
>> Fatal error (6)Aborted
I also saw that. When gpm was upgraded and restarted, Emacs aborted.
>> Output from "bt full" below; xbacktrace printed nothing at all.
>
>> The backtrace shows it at the abort() under the EBADF case in
>> wait_reading_process_output(). I think when Gpm_GetEvent gets an eof
>> from the server it closes gpm_fd; maybe that's the bad fd in question.
>
> I can't test it right now. Does the patch below help?
>
>
> Stefan
>
>
> --- keyboard.c.~1.959.~ 2008-06-03 02:14:30.000000000 -0400
> +++ keyboard.c 2008-06-13 18:17:35.000000000 -0400
> @@ -7189,6 +7189,8 @@
> while (gpm = Gpm_GetEvent (&event), gpm == 1) {
> nread += handle_one_term_event (tty, &event, &hold_quit);
> }
> + 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.
Regards,
Sven
- bug#407: gpm server stop making emacs abort(),
Sven Joachim <=