summaryrefslogtreecommitdiffstats
path: root/source/a/bash
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2020-02-08 21:20:28 +0000
committer Eric Hameleers <alien@slackware.com>2020-02-09 08:59:49 +0100
commit83ec0a78cbc3542992d00ec84a7fa9bd649d7ef5 (patch)
treeedc1778c859a089f97aceeeb604db85ea5e9b25c /source/a/bash
parent080300e1e7dec7bb1a6297b5a4406e2c0be46048 (diff)
downloadcurrent-83ec0a78cbc3542992d00ec84a7fa9bd649d7ef5.tar.gz
current-83ec0a78cbc3542992d00ec84a7fa9bd649d7ef5.tar.xz
Sat Feb 8 21:20:28 UTC 202020200208212028
a/bash-5.0.016-x86_64-1.txz: Upgraded. a/kernel-firmware-20200207_6f89735-noarch-1.txz: Upgraded. ap/nvme-cli-1.10.1-x86_64-1.txz: Added. d/gdb-9.1-x86_64-1.txz: Upgraded. l/ConsoleKit2-1.2.1-x86_64-1.txz: Upgraded. l/imagemagick-7.0.9_22-x86_64-1.txz: Upgraded. l/mozilla-nss-3.50-x86_64-1.txz: Upgraded. Upgraded to nss-3.50 and nspr-4.25. l/readline-8.0.004-x86_64-1.txz: Upgraded. n/libgpg-error-1.37-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/a/bash')
-rw-r--r--source/a/bash/bash-5.0-patches/bash50-01264
-rw-r--r--source/a/bash/bash-5.0-patches/bash50-01373
-rw-r--r--source/a/bash/bash-5.0-patches/bash50-01452
-rw-r--r--source/a/bash/bash-5.0-patches/bash50-01578
-rw-r--r--source/a/bash/bash-5.0-patches/bash50-01658
-rwxr-xr-xsource/a/bash/bash.SlackBuild8
6 files changed, 329 insertions, 4 deletions
diff --git a/source/a/bash/bash-5.0-patches/bash50-012 b/source/a/bash/bash-5.0-patches/bash50-012
new file mode 100644
index 000000000..7470e7665
--- /dev/null
+++ b/source/a/bash/bash-5.0-patches/bash50-012
@@ -0,0 +1,64 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-012
+
+Bug-Reported-by: lessbug@qq.com
+Bug-Reference-ID: <tencent_6AA531D9A5CC4121D86BD5CDA2E0DA98C605@qq.com>
+Bug-Reference-URL:
+
+Bug-Description:
+
+When using previous-history to go back beyond the beginning of the history list,
+it's possible to move to an incorrect partial line.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/lib/readline/misc.c 2017-07-07 17:30:12.000000000 -0400
+--- lib/readline/misc.c 2019-05-16 11:43:46.000000000 -0400
+***************
+*** 577,580 ****
+--- 590,594 ----
+ {
+ HIST_ENTRY *old_temp, *temp;
++ int had_saved_line;
+
+ if (count < 0)
+***************
+*** 589,592 ****
+--- 603,607 ----
+
+ /* If we don't have a line saved, then save this one. */
++ had_saved_line = _rl_saved_line_for_history != 0;
+ rl_maybe_save_line ();
+
+***************
+*** 612,616 ****
+ if (temp == 0)
+ {
+! rl_maybe_unsave_line ();
+ rl_ding ();
+ }
+--- 627,632 ----
+ if (temp == 0)
+ {
+! if (had_saved_line == 0)
+! _rl_free_saved_history_line ();
+ rl_ding ();
+ }
+*** ../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 11
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 12
+
+ #endif /* _PATCHLEVEL_H_ */
diff --git a/source/a/bash/bash-5.0-patches/bash50-013 b/source/a/bash/bash-5.0-patches/bash50-013
new file mode 100644
index 000000000..e44fdb505
--- /dev/null
+++ b/source/a/bash/bash-5.0-patches/bash50-013
@@ -0,0 +1,73 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-013
+
+Bug-Reported-by: HIROSE Masaaki <hirose31@gmail.com>
+Bug-Reference-ID: <CAGSOfA-RqiTe=+GsXsDKyZrrMWH4bDbXgMVVegMa6OjqC5xbnQ@mail.gmail.com>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2019-05/msg00038.html
+
+Bug-Description:
+
+Reading history entries with timestamps can result in history entries joined
+by linefeeds.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/lib/readline/histfile.c 2018-06-11 09:14:52.000000000 -0400
+--- lib/readline/histfile.c 2019-05-16 15:55:57.000000000 -0400
+***************
+*** 370,376 ****
+
+ has_timestamps = HIST_TIMESTAMP_START (buffer);
+! history_multiline_entries += has_timestamps && history_write_timestamps;
+
+ /* Skip lines until we are at FROM. */
+ for (line_start = line_end = buffer; line_end < bufend && current_line < from; line_end++)
+ if (*line_end == '\n')
+--- 370,378 ----
+
+ has_timestamps = HIST_TIMESTAMP_START (buffer);
+! history_multiline_entries += has_timestamps && history_write_timestamps;
+
+ /* Skip lines until we are at FROM. */
++ if (has_timestamps)
++ last_ts = buffer;
+ for (line_start = line_end = buffer; line_end < bufend && current_line < from; line_end++)
+ if (*line_end == '\n')
+***************
+*** 381,385 ****
+--- 383,398 ----
+ if (HIST_TIMESTAMP_START(p) == 0)
+ current_line++;
++ else
++ last_ts = p;
+ line_start = p;
++ /* If we are at the last line (current_line == from) but we have
++ timestamps (has_timestamps), then line_start points to the
++ text of the last command, and we need to skip to its end. */
++ if (current_line >= from && has_timestamps)
++ {
++ for (line_end = p; line_end < bufend && *line_end != '\n'; line_end++)
++ ;
++ line_start = (*line_end == '\n') ? line_end + 1 : line_end;
++ }
+ }
+
+
+*** ../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 12
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 13
+
+ #endif /* _PATCHLEVEL_H_ */
diff --git a/source/a/bash/bash-5.0-patches/bash50-014 b/source/a/bash/bash-5.0-patches/bash50-014
new file mode 100644
index 000000000..6cb49aae7
--- /dev/null
+++ b/source/a/bash/bash-5.0-patches/bash50-014
@@ -0,0 +1,52 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-014
+
+Bug-Reported-by: Johannes Hielscher <jhielscher@posteo.de>
+Bug-Reference-ID: <20190208205048.77c25a83@hordevm>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2019-02/msg00032.html
+
+Bug-Description:
+
+If the current line is empty, using the emacs C-xC-e binding to enter the
+editor will edit the previous command instead of the current (empty) one.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/bashline.c 2019-01-16 16:13:21.000000000 -0500
+--- bashline.c 2019-02-11 11:18:57.000000000 -0500
+***************
+*** 962,970 ****
+ finished with the command, so we should not ignore the last command */
+ using_history ();
+! if (rl_line_buffer[0])
+! {
+! current_command_line_count++; /* for rl_newline above */
+! bash_add_history (rl_line_buffer);
+! }
+ current_command_line_count = 0; /* for dummy history entry */
+ bash_add_history ("");
+--- 965,970 ----
+ finished with the command, so we should not ignore the last command */
+ using_history ();
+! current_command_line_count++; /* for rl_newline above */
+! bash_add_history (rl_line_buffer);
+ current_command_line_count = 0; /* for dummy history entry */
+ bash_add_history ("");
+*** ../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 13
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 14
+
+ #endif /* _PATCHLEVEL_H_ */
diff --git a/source/a/bash/bash-5.0-patches/bash50-015 b/source/a/bash/bash-5.0-patches/bash50-015
new file mode 100644
index 000000000..ff6e5e69d
--- /dev/null
+++ b/source/a/bash/bash-5.0-patches/bash50-015
@@ -0,0 +1,78 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-015
+
+Bug-Reported-by: Yu Kou <ckyoog@gmail.com>
+Bug-Reference-ID: <CAAqoF9Ko3nAShJXGzucafs-ByUagzZ4nbQonwEkwC7s9UqfWKw@mail.gmail.com>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2019-05/msg00032.html
+
+Bug-Description:
+
+If alias expansion is enabled when processing the command argument to the
+`-c' option, an alias is defined in that command, and the command ends with
+the invocation of that alias, the shell's command parser can prematurely
+terminate before the entire command is executed.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-20190426/builtins/evalstring.c 2019-01-29 14:15:19.000000000 -0500
+--- builtins/evalstring.c 2019-05-15 14:19:36.000000000 -0400
+***************
+*** 92,95 ****
+--- 92,96 ----
+ running_trap == 0 &&
+ *bash_input.location.string == '\0' &&
++ parser_expanding_alias () == 0 &&
+ command->type == cm_simple &&
+ signal_is_trapped (EXIT_TRAP) == 0 &&
+***************
+*** 106,109 ****
+--- 107,111 ----
+ {
+ return (*bash_input.location.string == '\0' &&
++ parser_expanding_alias () == 0 &&
+ (command->value.Connection->connector == AND_AND || command->value.Connection->connector == OR_OR || command->value.Connection->connector == ';') &&
+ command->value.Connection->second->type == cm_simple);
+***************
+*** 291,295 ****
+ with_input_from_string (string, from_file);
+ clear_shell_input_line ();
+! while (*(bash_input.location.string))
+ {
+ command = (COMMAND *)NULL;
+--- 293,297 ----
+ with_input_from_string (string, from_file);
+ clear_shell_input_line ();
+! while (*(bash_input.location.string) || parser_expanding_alias ())
+ {
+ command = (COMMAND *)NULL;
+***************
+*** 546,550 ****
+
+ with_input_from_string (string, from_file);
+! while (*(bash_input.location.string))
+ {
+ command = (COMMAND *)NULL;
+--- 548,552 ----
+
+ with_input_from_string (string, from_file);
+! while (*(bash_input.location.string)) /* XXX - parser_expanding_alias () ? */
+ {
+ command = (COMMAND *)NULL;
+*** ../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 14
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 15
+
+ #endif /* _PATCHLEVEL_H_ */
diff --git a/source/a/bash/bash-5.0-patches/bash50-016 b/source/a/bash/bash-5.0-patches/bash50-016
new file mode 100644
index 000000000..87f232d7a
--- /dev/null
+++ b/source/a/bash/bash-5.0-patches/bash50-016
@@ -0,0 +1,58 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-016
+
+Bug-Reported-by: sunnycemetery@gmail.com
+Bug-Reference-ID: <20190316041534.GB22884@midnight>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2019-03/msg00070.html
+
+Bug-Description:
+
+Bash waits too long to reap /dev/fd process substitutions used as redirections
+with loops and group commands, which can lead to file descriptor exhaustion.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/execute_cmd.c 2019-04-19 15:46:36.000000000 -0400
+--- execute_cmd.c 2019-07-01 16:45:49.000000000 -0400
+***************
+*** 1104,1107 ****
+--- 1085,1104 ----
+ discard_unwind_frame ("internal_fifos");
+ }
++ # if defined (HAVE_DEV_FD)
++ /* Reap process substitutions at the end of loops */
++ switch (command->type)
++ {
++ case cm_while:
++ case cm_until:
++ case cm_for:
++ case cm_group:
++ # if defined (ARITH_FOR_COMMAND)
++ case cm_arith_for:
++ # endif
++ reap_procsubs ();
++ default:
++ break;
++ }
++ # endif /* HAVE_DEV_FD */
+ #endif
+
+
+*** ../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 15
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 16
+
+ #endif /* _PATCHLEVEL_H_ */
diff --git a/source/a/bash/bash.SlackBuild b/source/a/bash/bash.SlackBuild
index 0277ac151..5d58965b1 100755
--- a/source/a/bash/bash.SlackBuild
+++ b/source/a/bash/bash.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2005-2015 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2005-2020 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -100,13 +100,13 @@ chown -R root:root .
find . -perm 664 | xargs chmod 644
find . -perm 775 | xargs chmod 755
+# Fix .so errors in manpages (needed for strict implementations such as mandoc):
+zcat $CWD/bash_manpages.patch.gz | patch -p1 --verbose || exit 1
+
if [ -d $CWD/bash-${VERSION}-patches ]; then
( cd $CWD/bash-${VERSION}-patches ; cat bash5?-??? ) | patch -p0 --verbose || exit 1
fi
-# Fix .so errors in manpages (needed for strict implementations such as mandoc):
-zcat $CWD/bash_manpages.patch.gz | patch -p1 --verbose || exit 1
-
# End of preparations
if echo "$*" | grep -qw -- --prep ; then
exit 0