From 6a3145aa203db84051c98387c02099d54bc0bb59 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Thu, 15 Aug 2019 19:00:16 +0000 Subject: Thu Aug 15 19:00:16 UTC 2019 a/bash-5.0.009-x86_64-1.txz: Upgraded. ap/vim-8.1.1847-x86_64-1.txz: Upgraded. d/distcc-3.3.3-x86_64-1.txz: Upgraded. l/elfutils-0.177-x86_64-1.txz: Upgraded. xap/vim-gvim-8.1.1847-x86_64-1.txz: Upgraded. --- source/a/bash/bash-5.0-patches/bash50-008 | 68 +++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 source/a/bash/bash-5.0-patches/bash50-008 (limited to 'source/a/bash/bash-5.0-patches/bash50-008') diff --git a/source/a/bash/bash-5.0-patches/bash50-008 b/source/a/bash/bash-5.0-patches/bash50-008 new file mode 100644 index 000000000..b09d6b33a --- /dev/null +++ b/source/a/bash/bash-5.0-patches/bash50-008 @@ -0,0 +1,68 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 5.0 +Patch-ID: bash50-008 + +Bug-Reported-by: Michael Albinus +Bug-Reference-ID: <87bm36k3kz.fsf@gmx.de> +Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2019-02/msg00111.html + +Bug-Description: + +When HISTSIZE is set to 0, history expansion can leave the history length +set to an incorrect value, leading to subsequent attempts to access invalid +memory. + +Patch (apply with `patch -p0'): + +*** ../bash-5.0-patched/bashhist.c 2018-07-05 22:41:14.000000000 -0400 +--- bashhist.c 2019-02-20 16:20:04.000000000 -0500 +*************** +*** 561,573 **** + if (!history_expansion_inhibited && history_expansion && history_expansion_p (line)) + { + /* If we are expanding the second or later line of a multi-line + command, decrease history_length so references to history expansions + in these lines refer to the previous history entry and not the + current command. */ + if (history_length > 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1) + history_length--; + expanded = history_expand (line, &history_value); + if (history_length >= 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1) +! history_length++; + + if (expanded) +--- 561,576 ---- + if (!history_expansion_inhibited && history_expansion && history_expansion_p (line)) + { ++ int old_len; ++ + /* If we are expanding the second or later line of a multi-line + command, decrease history_length so references to history expansions + in these lines refer to the previous history entry and not the + current command. */ ++ old_len = history_length; + if (history_length > 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1) + history_length--; + expanded = history_expand (line, &history_value); + if (history_length >= 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1) +! history_length = old_len; + + if (expanded) + +*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 7 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 8 + + #endif /* _PATCHLEVEL_H_ */ -- cgit v1.2.3