slackware-current/source/a/bash/bash-5.0-patches/bash50-015
Patrick J Volkerding 83ec0a78cb Sat Feb 8 21:20:28 UTC 2020
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.
2020-02-09 08:59:49 +01:00

78 lines
2.5 KiB
Text

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_ */