From: Michael Tremer <michael.tremer@ipfire.org>
To: development@lists.ipfire.org
Subject: Re: [PATCH 2/3] readline: update to 7.0
Date: Wed, 07 Jun 2017 10:00:10 +0100 [thread overview]
Message-ID: <1496826010.4077.7.camel@ipfire.org> (raw)
In-Reply-To: <20170606082537.13830-2-marcel.lorenz@ipfire.org>
[-- Attachment #1: Type: text/plain, Size: 25041 bytes --]
If you update this, you need to make sure that a compat package exists for
libreadline.so.6 because many applications are linked against it.
Best,
-Michael
On Tue, 2017-06-06 at 10:25 +0200, Marcel Lorenz wrote:
> Signed-off-by: Marcel Lorenz <marcel.lorenz(a)ipfire.org>
> ---
> config/rootfiles/common/readline | 8 +--
> lfs/readline | 21 +++++---
> src/patches/readline/readline63-001 | 43 ---------------
> src/patches/readline/readline63-002 | 44 ---------------
> src/patches/readline/readline63-003 | 47 ----------------
> src/patches/readline/readline63-004 | 45 ----------------
> src/patches/readline/readline63-005 | 58 --------------------
> src/patches/readline/readline63-006 | 63 ----------------------
> src/patches/readline/readline70-001 | 57 ++++++++++++++++++++
> src/patches/readline/readline70-002 | 103
> ++++++++++++++++++++++++++++++++++++
> src/patches/readline/readline70-003 | 40 ++++++++++++++
> 11 files changed, 219 insertions(+), 310 deletions(-)
> delete mode 100644 src/patches/readline/readline63-001
> delete mode 100644 src/patches/readline/readline63-002
> delete mode 100644 src/patches/readline/readline63-003
> delete mode 100644 src/patches/readline/readline63-004
> delete mode 100644 src/patches/readline/readline63-005
> delete mode 100644 src/patches/readline/readline63-006
> create mode 100644 src/patches/readline/readline70-001
> create mode 100644 src/patches/readline/readline70-002
> create mode 100644 src/patches/readline/readline70-003
>
> diff --git a/config/rootfiles/common/readline
> b/config/rootfiles/common/readline
> index b2ac26d..412de70 100644
> --- a/config/rootfiles/common/readline
> +++ b/config/rootfiles/common/readline
> @@ -8,11 +8,11 @@
> #usr/include/readline/rltypedefs.h
> #usr/include/readline/tilde.h
> #usr/lib/libhistory.so
> -usr/lib/libhistory.so.6
> -usr/lib/libhistory.so.6.3
> +usr/lib/libhistory.so.7
> +usr/lib/libhistory.so.7.0
> #usr/lib/libreadline.so
> -usr/lib/libreadline.so.6
> -usr/lib/libreadline.so.6.3
> +usr/lib/libreadline.so.7
> +usr/lib/libreadline.so.7.0
> #usr/share/doc/readline
> #usr/share/doc/readline/CHANGES
> #usr/share/doc/readline/INSTALL
> diff --git a/lfs/readline b/lfs/readline
> index eb488e3..5f88228 100644
> --- a/lfs/readline
> +++ b/lfs/readline
> @@ -1,7 +1,7 @@
> #############################################################################
> ##
> #
> #
> # IPFire.org - A linux based
> firewall #
> -# Copyright (C) 2007 Michael Tremer & Christian
> Schmidt #
> +# Copyright (C) 2016 IPFire Team <info(a)ipfire.org>
> #
> #
> #
> # This program is free software: you can redistribute it and/or
> modify #
> # it under the terms of the GNU General Public License as published
> by #
> @@ -24,13 +24,15 @@
>
> include Config
>
> -VER = 6.3
> +VER = 7.0
>
> THISAPP = readline-$(VER)
> DL_FILE = $(THISAPP).tar.gz
> DL_FROM = $(URL_IPFIRE)
> DIR_APP = $(DIR_SRC)/$(THISAPP)
> TARGET = $(DIR_INFO)/$(THISAPP)
> +PROG = readline
> +PAK_VER = 1
>
> #############################################################################
> ##
> # Top-level Rules
> @@ -40,7 +42,7 @@ objects = $(DL_FILE)
>
> $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>
> -$(DL_FILE)_MD5 = 33c8fb279e981274f485fd91da77e94a
> +$(DL_FILE)_MD5 = 205b03a87fc83dab653b628c59b9fc91
>
> install : $(TARGET)
>
> @@ -63,6 +65,9 @@ $(patsubst %,$(DIR_DL)/%,$(objects)) :
> $(subst %,%_MD5,$(objects)) :
> @$(MD5)
>
> +dist:
> + @$(PAK)
> +
> #############################################################################
> ##
> # Installation Details
> #############################################################################
> ##
> @@ -71,9 +76,13 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> @$(PREBUILD)
> @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
>
> - for i in $$(seq 1 6); do \
> - cd $(DIR_APP) && patch -Np0 <
> $(DIR_SRC)/src/patches/readline/readline63-$$(printf "%03d" "$${i}") || exit
> 1; \
> - done
> + #for i in $$(seq 1 6); do \
> + # cd $(DIR_APP) && patch -Np0 <
> $(DIR_SRC)/src/patches/readline/readline63-$$(printf "%03d" "$${i}") || exit
> 1; \
> + #done
> +
> + # prevent in some cases to trigger a linking bug in ldconfig
> + cd $(DIR_APP) &&sed -i '/MV.*old/d' Makefile.in
> + cd $(DIR_APP) &&sed -i '/{OLDSUFF}/c:' support/shlib-install
>
> cd $(DIR_APP) && ./configure --prefix=/usr --disable-static
> cd $(DIR_APP) && make $(MAKETUNING) SHLIB_LIBS=-lncurses
> diff --git a/src/patches/readline/readline63-001
> b/src/patches/readline/readline63-001
> deleted file mode 100644
> index bae6a2f..0000000
> --- a/src/patches/readline/readline63-001
> +++ /dev/null
> @@ -1,43 +0,0 @@
> - READLINE PATCH REPORT
> - =====================
> -
> -Readline-Release: 6.3
> -Patch-ID: readline63-001
> -
> -Bug-Reported-by: Daan van Rossum <daan(a)flash.uchicago.edu>
> -Bug-Reference-ID: <20140307072523.GA14250(a)flash.uchicago.edu>
> -Bug-Reference-URL:
> -
> -Bug-Description:
> -
> -The `.' command in vi mode cannot undo multi-key commands beginning with
> -`c', `d', and `y' (command plus motion specifier).
> -
> -Patch (apply with `patch -p0'):
> -
> -*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
> ---- readline.c 2014-03-07 15:20:33.000000000 -0500
> -***************
> -*** 965,969 ****
> - if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
> - key != ANYOTHERKEY &&
> -! rl_key_sequence_length == 1 && /* XXX */
> - _rl_vi_textmod_command (key))
> - _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
> ---- 965,969 ----
> - if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
> - key != ANYOTHERKEY &&
> -! _rl_dispatching_keymap == vi_movement_keymap &&
> - _rl_vi_textmod_command (key))
> - _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
> -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
> ---- patchlevel 2014-03-21 08:28:40.000000000 -0400
> -***************
> -*** 1,3 ****
> - # Do not edit -- exists only for use by patch
> -
> -! 5
> ---- 1,3 ----
> - # Do not edit -- exists only for use by patch
> -
> -! 1
> diff --git a/src/patches/readline/readline63-002
> b/src/patches/readline/readline63-002
> deleted file mode 100644
> index 0e79f13..0000000
> --- a/src/patches/readline/readline63-002
> +++ /dev/null
> @@ -1,44 +0,0 @@
> - READLINE PATCH REPORT
> - =====================
> -
> -Readline-Release: 6.3
> -Patch-ID: readline63-002
> -
> -Bug-Reported-by: Anatol Pomozov <anatol.pomozov(a)gmail.com>
> -Bug-Reference-ID: <CAOMFOmXy3mT2So5GQ5F-smCVArQuAeBwZ2QKzgCtMeXJoDeYOQ
> @mail.gmail.com>
> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014
> -03/msg00010.html
> -
> -Bug-Description:
> -
> -When in callback mode, some readline commands can cause readline to seg
> -fault by passing invalid contexts to callback functions.
> -
> -Patch (apply with `patch -p0'):
> -
> -*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
> ---- readline.c 2014-03-10 14:15:02.000000000 -0400
> -***************
> -*** 745,749 ****
> -
> - RL_CHECK_SIGNALS ();
> -! if (r == 0) /* success! */
> - {
> - _rl_keyseq_chain_dispose ();
> ---- 745,750 ----
> -
> - RL_CHECK_SIGNALS ();
> -! /* We only treat values < 0 specially to simulate recursion. */
> -! if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0)) /*
> success! or failure! */
> - {
> - _rl_keyseq_chain_dispose ();
> -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
> ---- patchlevel 2014-03-21 08:28:40.000000000 -0400
> -***************
> -*** 1,3 ****
> - # Do not edit -- exists only for use by patch
> -
> -! 1
> ---- 1,3 ----
> - # Do not edit -- exists only for use by patch
> -
> -! 2
> diff --git a/src/patches/readline/readline63-003
> b/src/patches/readline/readline63-003
> deleted file mode 100644
> index d2cad94..0000000
> --- a/src/patches/readline/readline63-003
> +++ /dev/null
> @@ -1,47 +0,0 @@
> - READLINE PATCH REPORT
> - =====================
> -
> -Readline-Release: 6.3
> -Patch-ID: readline63-003
> -
> -Bug-Reported-by:
> -Bug-Reference-ID:
> -Bug-Reference-URL:
> -
> -Bug-Description:
> -
> -There are debugging functions in the readline release that are theoretically
> -exploitable as security problems. They are not public functions, but have
> -global linkage.
> -
> -Patch (apply with `patch -p0'):
> -
> -*** ../readline-6.3/util.c 2013-09-02 13:36:12.000000000 -0400
> ---- util.c 2014-03-20 10:25:53.000000000 -0400
> -***************
> -*** 477,480 ****
> ---- 479,483 ----
> - }
> -
> -+ #if defined (DEBUG)
> - #if defined (USE_VARARGS)
> - static FILE *_rl_tracefp;
> -***************
> -*** 539,542 ****
> ---- 542,546 ----
> - }
> - #endif
> -+ #endif /* DEBUG */
> -
> -
> -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
> ---- patchlevel 2014-03-21 08:28:40.000000000 -0400
> -***************
> -*** 1,3 ****
> - # Do not edit -- exists only for use by patch
> -
> -! 2
> ---- 1,3 ----
> - # Do not edit -- exists only for use by patch
> -
> -! 3
> diff --git a/src/patches/readline/readline63-004
> b/src/patches/readline/readline63-004
> deleted file mode 100644
> index 3cd89e3..0000000
> --- a/src/patches/readline/readline63-004
> +++ /dev/null
> @@ -1,45 +0,0 @@
> - READLINE PATCH REPORT
> - =====================
> -
> -Readline-Release: 6.3
> -Patch-ID: readline63-004
> -
> -Bug-Reported-by: Egmont Koblinger <egmont(a)gmail.com>
> -Bug-Reference-ID: <CAGWcZk+bU5Jo1M+tutGvL-250UBE9DXjpeJVofYJSFcqFEVfMg
> @mail.gmail.com>
> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/
> msg00153.html
> -
> -Bug-Description:
> -
> -The signal handling changes to bash and readline (to avoid running any code
> -in a signal handler context) cause the cursor to be placed on the wrong
> -line of a multi-line command after a ^C interrupts editing.
> -
> -Patch (apply with `patch -p0'):
> -
> -*** ../readline-6.3-patched/display.c 2013-12-27 13:10:56.000000000
> -0500
> ---- display.c 2014-03-27 11:52:45.000000000 -0400
> -***************
> -*** 2678,2682 ****
> - if (_rl_echoing_p)
> - {
> -! _rl_move_vert (_rl_vis_botlin);
> - _rl_vis_botlin = 0;
> - fflush (rl_outstream);
> ---- 2678,2683 ----
> - if (_rl_echoing_p)
> - {
> -! if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */
> -! _rl_move_vert (_rl_vis_botlin);
> - _rl_vis_botlin = 0;
> - fflush (rl_outstream);
> -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
> ---- patchlevel 2014-03-21 08:28:40.000000000 -0400
> -***************
> -*** 1,3 ****
> - # Do not edit -- exists only for use by patch
> -
> -! 3
> ---- 1,3 ----
> - # Do not edit -- exists only for use by patch
> -
> -! 4
> diff --git a/src/patches/readline/readline63-005
> b/src/patches/readline/readline63-005
> deleted file mode 100644
> index 8a63738..0000000
> --- a/src/patches/readline/readline63-005
> +++ /dev/null
> @@ -1,58 +0,0 @@
> - READLINE PATCH REPORT
> - =====================
> -
> -Readline-Release: 6.3
> -Patch-ID: readline63-005
> -
> -Bug-Reported-by: Juergen Daubert <jue(a)jue.li>
> -Bug-Reference-ID: <20140303180430.GA7346(a)jue.netz>
> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014
> -03/msg00002.html
> -
> -Bug-Description:
> -
> -There are still applications using the deprecated Function/VFunction/etc.
> -typedefs in rltypedefs.h. This patch restores the typedefs, but attempts
> -to mark them as deprecated using gcc/clang attributes. Thanks to Max Horn
> -for the suggestion.
> -
> -Patch (apply with `patch -p0'):
> -
> -*** ../readline-6.3-patched/rltypedefs.h 2011-03-26 14:53:31.000000000
> -0400
> ---- rltypedefs.h 2014-04-10 11:30:45.000000000 -0400
> -***************
> -*** 27,30 ****
> ---- 27,49 ----
> - #endif
> -
> -+ /* Old-style, attempt to mark as deprecated in some way people will notice.
> */
> -+
> -+ #if !defined (_FUNCTION_DEF)
> -+ # define _FUNCTION_DEF
> -+
> -+ #if defined(__GNUC__) || defined(__clang__)
> -+ typedef int Function () __attribute__ ((deprecated));
> -+ typedef void VFunction () __attribute__ ((deprecated));
> -+ typedef char *CPFunction () __attribute__ ((deprecated));
> -+ typedef char **CPPFunction () __attribute__ ((deprecated));
> -+ #else
> -+ typedef int Function ();
> -+ typedef void VFunction ();
> -+ typedef char *CPFunction ();
> -+ typedef char **CPPFunction ();
> -+ #endif
> -+
> -+ #endif /* _FUNCTION_DEF */
> -+
> - /* New style. */
> -
> -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
> ---- patchlevel 2014-03-21 08:28:40.000000000 -0400
> -***************
> -*** 1,3 ****
> - # Do not edit -- exists only for use by patch
> -
> -! 4
> ---- 1,3 ----
> - # Do not edit -- exists only for use by patch
> -
> -! 5
> diff --git a/src/patches/readline/readline63-006
> b/src/patches/readline/readline63-006
> deleted file mode 100644
> index a3f0930..0000000
> --- a/src/patches/readline/readline63-006
> +++ /dev/null
> @@ -1,63 +0,0 @@
> - READLINE PATCH REPORT
> - =====================
> -
> -Readline-Release: 6.3
> -Patch-ID: readline63-006
> -
> -Bug-Reported-by: <Trond.Endrestol(a)ximalas.info>
> -Bug-Reference-ID: <alpine.BSF.2.03.1404192114310.1973(a)enterprise.ximal
> as.info>
> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/
> msg00069.html
> -
> -Bug-Description:
> -
> -Using reverse-i-search when horizontal scrolling is enabled does not
> redisplay
> -the entire line containing the successful search results.
> -
> -Patch (apply with `patch -p0'):
> -
> -*** ../readline-6.3-patched/display.c 2014-04-08 18:19:36.000000000
> -0400
> ---- display.c 2014-04-20 18:32:52.000000000 -0400
> -***************
> -*** 1638,1642 ****
> - the spot of first difference is before the end of the invisible chars,
> - lendiff needs to be adjusted. */
> -! if (current_line == 0 && !_rl_horizontal_scroll_mode &&
> - current_invis_chars != visible_wrap_offset)
> - {
> ---- 1638,1642 ----
> - the spot of first difference is before the end of the invisible chars,
> - lendiff needs to be adjusted. */
> -! if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
> - current_invis_chars != visible_wrap_offset)
> - {
> -***************
> -*** 1826,1831 ****
> - _rl_last_c_pos += bytes_to_insert;
> -
> - if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
> -! goto clear_rest_of_line;
> - }
> - }
> ---- 1826,1836 ----
> - _rl_last_c_pos += bytes_to_insert;
> -
> -+ /* XXX - we only want to do this if we are at the end of the
> line
> -+ so we move there with _rl_move_cursor_relative */
> - if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
> -! {
> -! _rl_move_cursor_relative (ne-new, new);
> -! goto clear_rest_of_line;
> -! }
> - }
> - }
> -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
> ---- patchlevel 2014-03-21 08:28:40.000000000 -0400
> -***************
> -*** 1,3 ****
> - # Do not edit -- exists only for use by patch
> -
> -! 5
> ---- 1,3 ----
> - # Do not edit -- exists only for use by patch
> -
> -! 6
> diff --git a/src/patches/readline/readline70-001
> b/src/patches/readline/readline70-001
> new file mode 100644
> index 0000000..437a440
> --- /dev/null
> +++ b/src/patches/readline/readline70-001
> @@ -0,0 +1,57 @@
> + READLINE PATCH REPORT
> + =====================
> +
> +Readline-Release: 7.0
> +Patch-ID: readline70-001
> +
> +Bug-Reported-by: Sean Zha <freeman_cha(a)hotmail.com>
> +Bug-Reference-ID: <BN3PR01MB13657D9303EB94BF6E54216E8CCA0(a)BN3PR01MB1365
> .prod.exchangelabs.com>
> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-09/ms
> g00107.html
> +
> +Bug-Description:
> +
> +Readline-7.0 changed the way the history list is initially allocated to
> reduce
> +the number of reallocations and copies. Users who set the readline
> +history-size variable to a very large number to essentially unlimit the size
> +of the history list will get memory allocation errors
> +
> +Patch (apply with `patch -p0'):
> +
> +*** ../readline-7.0/history.c 2015-12-28 13:50:31.000000000 -0500
> +--- history.c 2016-09-30 14:28:40.000000000 -0400
> +***************
> +*** 58,61 ****
> +--- 58,63 ----
> + #define DEFAULT_HISTORY_INITIAL_SIZE 502
> +
> ++ #define MAX_HISTORY_INITIAL_SIZE 8192
> ++
> + /* The number of slots to increase the_history by. */
> + #define DEFAULT_HISTORY_GROW_SIZE 50
> +***************
> +*** 308,312 ****
> + {
> + if (history_stifled && history_max_entries > 0)
> +! history_size = history_max_entries + 2;
> + else
> + history_size = DEFAULT_HISTORY_INITIAL_SIZE;
> +--- 310,316 ----
> + {
> + if (history_stifled && history_max_entries > 0)
> +! history_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE)
> +! ? MAX_HISTORY_INITIAL_SIZE
> +! : history_max_entries + 2;
> + else
> + history_size = DEFAULT_HISTORY_INITIAL_SIZE;
> +
> +*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
> +--- patchlevel 2014-03-21 08:28:40.000000000 -0400
> +***************
> +*** 1,3 ****
> + # Do not edit -- exists only for use by patch
> +
> +! 0
> +--- 1,3 ----
> + # Do not edit -- exists only for use by patch
> +
> +! 1
> diff --git a/src/patches/readline/readline70-002
> b/src/patches/readline/readline70-002
> new file mode 100644
> index 0000000..ac76dae
> --- /dev/null
> +++ b/src/patches/readline/readline70-002
> @@ -0,0 +1,103 @@
> + READLINE PATCH REPORT
> + =====================
> +
> +Readline-Release: 7.0
> +Patch-ID: readline70-002
> +
> +Bug-Reported-by: Hong Cho <hong.cho(a)citrix.com>
> +Bug-Reference-ID: <c30b5fe62b2543af8297e47ca487c29c(a)SJCPEX02CL02.citri
> te.net>
> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2016
> -12/msg00002.html
> +
> +Bug-Description:
> +
> +There is a race condition in add_history() that can be triggered by a fatal
> +signal arriving between the time the history length is updated and the time
> +the history list update is completed. A later attempt to reference an
> +invalid history entry can cause a crash.
> +
> +Patch (apply with `patch -p0'):
> +
> +*** ../readline-7.0-patched/history.c 2016-11-11 13:42:49.000000000
> -0500
> +--- history.c 2016-12-05 10:37:51.000000000 -0500
> +***************
> +*** 280,283 ****
> +--- 280,284 ----
> + {
> + HIST_ENTRY *temp;
> ++ int new_length;
> +
> + if (history_stifled && (history_length == history_max_entries))
> +***************
> +*** 296,306 ****
> + /* Copy the rest of the entries, moving down one slot. Copy includes
> + trailing NULL. */
> +- #if 0
> +- for (i = 0; i < history_length; i++)
> +- the_history[i] = the_history[i + 1];
> +- #else
> + memmove (the_history, the_history + 1, history_length * sizeof
> (HIST_ENTRY *));
> +- #endif
> +
> + history_base++;
> + }
> +--- 297,303 ----
> + /* Copy the rest of the entries, moving down one slot. Copy includes
> + trailing NULL. */
> + memmove (the_history, the_history + 1, history_length * sizeof
> (HIST_ENTRY *));
> +
> ++ new_length = history_length;
> + history_base++;
> + }
> +***************
> +*** 316,320 ****
> + history_size = DEFAULT_HISTORY_INITIAL_SIZE;
> + the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof
> (HIST_ENTRY *));
> +! history_length = 1;
> + }
> + else
> +--- 313,317 ----
> + history_size = DEFAULT_HISTORY_INITIAL_SIZE;
> + the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof
> (HIST_ENTRY *));
> +! new_length = 1;
> + }
> + else
> +***************
> +*** 326,330 ****
> + xrealloc (the_history, history_size * sizeof (HIST_ENTRY
> *));
> + }
> +! history_length++;
> + }
> + }
> +--- 323,327 ----
> + xrealloc (the_history, history_size * sizeof (HIST_ENTRY
> *));
> + }
> +! new_length = history_length + 1;
> + }
> + }
> +***************
> +*** 332,337 ****
> + temp = alloc_history_entry ((char *)string, hist_inittime ());
> +
> +! the_history[history_length] = (HIST_ENTRY *)NULL;
> +! the_history[history_length - 1] = temp;
> + }
> +
> +--- 329,335 ----
> + temp = alloc_history_entry ((char *)string, hist_inittime ());
> +
> +! the_history[new_length] = (HIST_ENTRY *)NULL;
> +! the_history[new_length - 1] = temp;
> +! history_length = new_length;
> + }
> +
> +*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
> +--- patchlevel 2014-03-21 08:28:40.000000000 -0400
> +***************
> +*** 1,3 ****
> + # Do not edit -- exists only for use by patch
> +
> +! 1
> +--- 1,3 ----
> + # Do not edit -- exists only for use by patch
> +
> +! 2
> diff --git a/src/patches/readline/readline70-003
> b/src/patches/readline/readline70-003
> new file mode 100644
> index 0000000..a19cae6
> --- /dev/null
> +++ b/src/patches/readline/readline70-003
> @@ -0,0 +1,40 @@
> + READLINE PATCH REPORT
> + =====================
> +
> +Readline-Release: 7.0
> +Patch-ID: readline70-003
> +
> +Bug-Reported-by: Frédéric Brière <fbriere(a)fbriere.net>
> +Bug-Reference-ID: <20170120180724.7ydq7fb2hsp366dj(a)fabul.fbriere.net>
> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2017
> -01/msg00002.html
> +
> +Bug-Description:
> +
> +Readline-7.0 uses pselect(2) to allow readline to handle signals that do not
> +interrupt read(2), such as SIGALRM, before reading another character. The
> +signal mask used in the pselect call did not take into account signals the
> +calling application blocked before calling readline().
> +
> +Patch (apply with `patch -p0'):
> +
> +*** ../readline-7.0-patched/input.c 2016-08-30 10:21:47.000000000
> -0400
> +--- input.c 2017-01-23 10:21:56.000000000 -0500
> +***************
> +*** 514,517 ****
> +--- 514,518 ----
> + #if defined (HAVE_PSELECT)
> + sigemptyset (&empty_set);
> ++ sigprocmask (SIG_BLOCK, (sigset_t *)NULL, &empty_set);
> + FD_ZERO (&readfds);
> + FD_SET (fileno (stream), &readfds);
> +*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
> +--- patchlevel 2014-03-21 08:28:40.000000000 -0400
> +***************
> +*** 1,3 ****
> + # Do not edit -- exists only for use by patch
> +
> +! 2
> +--- 1,3 ----
> + # Do not edit -- exists only for use by patch
> +
> +! 3
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2017-06-07 9:00 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-06 8:25 [PATCH 1/3] bash: update to 4.4 with patch 1-12 Marcel Lorenz
2017-06-06 8:25 ` [PATCH 2/3] readline: update to 7.0 Marcel Lorenz
2017-06-07 9:00 ` Michael Tremer [this message]
2017-06-06 8:25 ` [PATCH 3/3] remove old bash 3.2 patches Marcel Lorenz
2017-06-07 9:01 ` Michael Tremer
2017-06-07 8:59 ` [PATCH 1/3] bash: update to 4.4 with patch 1-12 Michael Tremer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1496826010.4077.7.camel@ipfire.org \
--to=michael.tremer@ipfire.org \
--cc=development@lists.ipfire.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox