[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#51229: 28.0.50; [PATCH] Mitigate Blandyism on thread signals
From: |
Eli Zaretskii |
Subject: |
bug#51229: 28.0.50; [PATCH] Mitigate Blandyism on thread signals |
Date: |
Fri, 15 Oct 2021 22:11:32 +0300 |
> From: dick <dick.r.chiang@gmail.com>
> Date: Fri, 15 Oct 2021 14:33:29 -0400
>
> From: dickmao <dick.r.chiang@gmail.com>
> Date: Fri, 15 Oct 2021 14:29:17 -0400
> Subject: [PATCH] Blandyism #48
>
> As for most Blandyisms dating back to early 90s, the fastidious
> maintenance of the waiting_for_input flag likely yields no
> discernible difference at the cost of FUD.
>
> * src/thread.c (post_acquire_global_lock):
> Clear thread's "waiting_for_input" flag before signalling.
> ---
> src/thread.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/src/thread.c b/src/thread.c
> index 714b1cd903..d7dce6cc8e 100644
> --- a/src/thread.c
> +++ b/src/thread.c
> @@ -122,6 +122,7 @@ post_acquire_global_lock (struct thread_state *self)
>
> current_thread->error_symbol = Qnil;
> current_thread->error_data = Qnil;
> + clear_waiting_for_input();
> Fsignal (sym, data);
> }
That's a non-starter, not unless you explain why this is not needed
for threads, because it attempts to artificially remove a restriction
without any analysis or rationale. Why is a non-main thread waiting
for input different from the main thread waiting for input?