Till Wegmüller
2024-04-07 6ca8c2ef2bffdfec8cc95c049ac3f2230dc6ca82
commit | author | age
6ca8c2 1                READLINE PATCH REPORT
TW 2                =====================
3
4 Readline-Release: 8.2
5 Patch-ID: readline82-005
6
7 Bug-Reported-by:    Simon Marchi <simon.marchi@polymtl.ca>
8 Bug-Reference-ID:
9 Bug-Reference-URL:    https://lists.gnu.org/archive/html/bug-readline/2022-09/msg00005.html
10
11 Bug-Description:
12
13 If an application is using readline in callback mode, and a signal arrives
14 after readline checks for it in rl_callback_read_char() but before it
15 restores the application's signal handlers, it won't get processed until the
16 next time the application calls rl_callback_read_char(). Readline needs to
17 check for and resend any pending signals after restoring the application's
18 signal handlers.
19
20 Patch (apply with `patch -p0'):
21
22 *** ../readline-8.2-patched/callback.c    2022-04-29 12:02:56.000000000 -0400
23 --- a/callback.c    2022-10-11 10:59:06.000000000 -0400
24 ***************
25 *** 116,120 ****
26     do { \
27       if (rl_persistent_signal_handlers == 0) \
28 !       rl_clear_signals (); \
29       return; \
30     } while (0)
31 --- 116,123 ----
32     do { \
33       if (rl_persistent_signal_handlers == 0) \
34 !       { \
35 !         rl_clear_signals (); \
36 !         if (_rl_caught_signal) _rl_signal_handler (_rl_caught_signal); \
37 !       } \
38       return; \
39     } while (0)
40 *** ../readline-8.2/patchlevel    2013-11-15 08:11:11.000000000 -0500
41 --- a/patchlevel    2014-03-21 08:28:40.000000000 -0400
42 ***************
43 *** 1,3 ****
44   # Do not edit -- exists only for use by patch
45   
46 ! 4
47 --- 1,3 ----
48   # Do not edit -- exists only for use by patch
49   
50 ! 5