Subject: bug#25171: Error in thread causes Emacs to abort

From: Eli Zaretskii <[email-masked]>
Date: Sun, 11 Dec 2016 19:43:00 +0200

> Date: Sun, 11 Dec 2016 18:13:34 +0200
> From: Eli Zaretskii <[email-masked]>
> Cc: [email-masked]
> 
> diff --git a/src/keyboard.c b/src/keyboard.c
> index 01b9b3c..cc78548 100644
> --- a/src/keyboard.c
> +++ b/src/keyboard.c
> @@ -148,9 +148,6 @@ static Lisp_Object regular_top_level_message;
>  
>  static sys_jmp_buf getcjmp;
>  
> -/* True while doing kbd input.  */
> -bool waiting_for_input;
> -
>  /* True while displaying for echoing.   Delays C-g throwing.  */
>  
>  static bool echoing;
> @@ -322,10 +319,6 @@ static ptrdiff_t echo_length (void);
>  /* Incremented whenever a timer is run.  */
>  unsigned timers_run;
>  
> -/* Address (if not 0) of struct timespec to zero out if a SIGIO interrupt
> -   happens.  */
> -struct timespec *input_available_clear_time;
> -

Actually, making input_available_clear_time thread-specific was a bad
idea (it causes current_thread dereferenced from a signal handler, and
current_thread could be NULL for short periods of time), so I undid it
in a followup commit.

The rest seems still valid.