[bash] Apply all upstream patches since 4.3-18-1 up to this date
Ondrej Oprala
ooprala at fedoraproject.org
Thu Jul 24 08:34:56 UTC 2014
commit eb71c89a73a9bd6fb1d7f40adedb7d44d43bd79b
Author: Ondrej Oprala <ooprala at redhat.com>
Date: Thu Jul 24 10:33:30 2014 +0200
Apply all upstream patches since 4.3-18-1 up to this date
bash-4.3-here-doc-ps2-comsub.patch | 47 ++++++++++++++++++++++++++
bash-4.3-lastpipe-nested-pipe-segfault.patch | 24 +++++++++++++
bash-4.3-parse-time-keyword.patch | 28 +++++++++++++++
bash-4.3-pathexp-globignore-delim.patch | 15 ++++++++
bash-4.3-readline-revert-lines.patch | 18 ++++++++++
bash.spec | 16 ++++++++-
6 files changed, 147 insertions(+), 1 deletions(-)
---
diff --git a/bash-4.3-here-doc-ps2-comsub.patch b/bash-4.3-here-doc-ps2-comsub.patch
new file mode 100644
index 0000000..0ccfd20
--- /dev/null
+++ b/bash-4.3-here-doc-ps2-comsub.patch
@@ -0,0 +1,47 @@
+*** ../bash-4.3-patched/shell.h 2012-12-25 21:11:01.000000000 -0500
+--- shell.h 2014-06-03 09:24:28.000000000 -0400
+***************
+*** 169,173 ****
+ int expand_aliases;
+ int echo_input_at_read;
+!
+ } sh_parser_state_t;
+
+--- 169,174 ----
+ int expand_aliases;
+ int echo_input_at_read;
+! int need_here_doc;
+!
+ } sh_parser_state_t;
+
+*** ../bash-4.3-patched/parse.y 2014-05-14 09:16:40.000000000 -0400
+--- parse.y 2014-04-30 09:27:59.000000000 -0400
+***************
+*** 2643,2647 ****
+
+ r = 0;
+! while (need_here_doc)
+ {
+ parser_state |= PST_HEREDOC;
+--- 2643,2647 ----
+
+ r = 0;
+! while (need_here_doc > 0)
+ {
+ parser_state |= PST_HEREDOC;
+***************
+*** 6076,6079 ****
+--- 6076,6080 ----
+ ps->expand_aliases = expand_aliases;
+ ps->echo_input_at_read = echo_input_at_read;
++ ps->need_here_doc = need_here_doc;
+
+ ps->token = token;
+***************
+*** 6124,6127 ****
+--- 6125,6129 ----
+ expand_aliases = ps->expand_aliases;
+ echo_input_at_read = ps->echo_input_at_read;
++ need_here_doc = ps->need_here_doc;
+
+ FREE (token);
diff --git a/bash-4.3-lastpipe-nested-pipe-segfault.patch b/bash-4.3-lastpipe-nested-pipe-segfault.patch
new file mode 100644
index 0000000..200a84f
--- /dev/null
+++ b/bash-4.3-lastpipe-nested-pipe-segfault.patch
@@ -0,0 +1,24 @@
+*** ../bash-4.3-patched/execute_cmd.c 2014-01-31 10:54:52.000000000 -0500
+--- execute_cmd.c 2014-06-19 08:05:49.000000000 -0400
+***************
+*** 2410,2414 ****
+ lstdin = wait_for (lastpid);
+ #if defined (JOB_CONTROL)
+! exec_result = job_exit_status (lastpipe_jid);
+ #endif
+ unfreeze_jobs_list ();
+--- 2425,2438 ----
+ lstdin = wait_for (lastpid);
+ #if defined (JOB_CONTROL)
+! /* If wait_for removes the job from the jobs table, use result of last
+! command as pipeline's exit status as usual. The jobs list can get
+! frozen and unfrozen at inconvenient times if there are multiple pipelines
+! running simultaneously. */
+! if (INVALID_JOB (lastpipe_jid) == 0)
+! exec_result = job_exit_status (lastpipe_jid);
+! else if (pipefail_opt)
+! exec_result = exec_result | lstdin; /* XXX */
+! /* otherwise we use exec_result */
+!
+ #endif
+ unfreeze_jobs_list ();
diff --git a/bash-4.3-parse-time-keyword.patch b/bash-4.3-parse-time-keyword.patch
new file mode 100644
index 0000000..40337f5
--- /dev/null
+++ b/bash-4.3-parse-time-keyword.patch
@@ -0,0 +1,28 @@
+*** ../bash-4.3-patched/parse.y 2014-04-07 11:56:12.000000000 -0400
+--- parse.y 2014-06-11 10:25:53.000000000 -0400
+***************
+*** 2789,2797 ****
+ case OR_OR:
+ case '&':
+ case DO:
+ case THEN:
+ case ELSE:
+ case '{': /* } */
+! case '(': /* ) */
+ case BANG: /* ! time pipeline */
+ case TIME: /* time time pipeline */
+--- 2789,2802 ----
+ case OR_OR:
+ case '&':
++ case WHILE:
+ case DO:
++ case UNTIL:
++ case IF:
+ case THEN:
++ case ELIF:
+ case ELSE:
+ case '{': /* } */
+! case '(': /* )( */
+! case ')': /* only valid in case statement */
+ case BANG: /* ! time pipeline */
+ case TIME: /* time time pipeline */
diff --git a/bash-4.3-pathexp-globignore-delim.patch b/bash-4.3-pathexp-globignore-delim.patch
new file mode 100644
index 0000000..6b019f9
--- /dev/null
+++ b/bash-4.3-pathexp-globignore-delim.patch
@@ -0,0 +1,15 @@
+*** ../bash-4.3-patched/pathexp.c 2014-01-31 09:34:33.000000000 -0500
+--- pathexp.c 2014-06-20 15:33:09.000000000 -0400
+***************
+*** 539,543 ****
+ return 0;
+
+! n = skip_to_delim (s, i, ":", SD_NOJMP|SD_EXTGLOB);
+ t = substring (s, i, n);
+
+--- 539,543 ----
+ return 0;
+
+! n = skip_to_delim (s, i, ":", SD_NOJMP|SD_EXTGLOB|SD_GLOB);
+ t = substring (s, i, n);
+
diff --git a/bash-4.3-readline-revert-lines.patch b/bash-4.3-readline-revert-lines.patch
new file mode 100644
index 0000000..2ce3d87
--- /dev/null
+++ b/bash-4.3-readline-revert-lines.patch
@@ -0,0 +1,18 @@
+*** ../bash-4.3-patched/lib/readline/misc.c 2012-09-01 18:03:11.000000000 -0400
+--- lib/readline/misc.c 2014-06-30 13:41:19.000000000 -0400
+***************
+*** 462,465 ****
+--- 462,466 ----
+ /* Set up rl_line_buffer and other variables from history entry */
+ rl_replace_from_history (entry, 0); /* entry->line is now current */
++ entry->data = 0; /* entry->data is now current undo list */
+ /* Undo all changes to this history entry */
+ while (rl_undo_list)
+***************
+*** 469,473 ****
+ FREE (entry->line);
+ entry->line = savestring (rl_line_buffer);
+- entry->data = 0;
+ }
+ entry = previous_history ();
+--- 470,473 ----
diff --git a/bash.spec b/bash.spec
index 268fbde..4d6dae4 100644
--- a/bash.spec
+++ b/bash.spec
@@ -7,7 +7,7 @@
Version: %{baseversion}%{patchleveltag}
Name: bash
Summary: The GNU Bourne Again shell
-Release: 5%{?dist}
+Release: 6%{?dist}
Group: System Environment/Shells
License: GPLv3+
Url: http://www.gnu.org/software/bash
@@ -89,7 +89,13 @@ Patch127: bash-4.2-trap.patch
# 1112710 - mention ulimit -c and -f POSIX block size
Patch128: bash-4.3-man-ulimit.patch
+# A series of patches emitted by upstream since 4.3-18
Patch129: bash-4.3-array-element.patch
+Patch130: bash-4.3-here-doc-ps2-comsub.patch
+Patch131: bash-4.3-parse-time-keyword.patch
+Patch132: bash-4.3-lastpipe-nested-pipe-segfault.patch
+Patch133: bash-4.3-readline-revert-lines.patch
+Patch134: bash-4.3-pathexp-globignore-delim.patch
BuildRequires: texinfo bison
BuildRequires: ncurses-devel
@@ -163,6 +169,11 @@ This package contains documentation files for %{name}.
%patch125 -p1 -b .size_type
%patch128 -p1 -b .ulimit
%patch129 -p1 -b .element
+%patch130 -p0 -b .comsub
+%patch131 -p0 -b .keyword
+%patch132 -p0 -b .segfault
+%patch133 -p0 -b .lines
+%patch134 -p0 -b .delim
echo %{version} > _distribution
echo %{release} > _patchlevel
@@ -358,6 +369,9 @@ end
%doc doc/*.ps doc/*.0 doc/*.html doc/article.txt
%changelog
+* Thu Jul 24 2014 Ondrej Oprala <ooprala at redhat.com> - 4.3.18-6
+- Apply all upstream patches since 4.3-18-1 up to this date
+
* Thu Jul 24 2014 Ondrej Oprala <ooprala at redhat.com> - 4.3.18-5
- Array name expansion - apply upstream quickfix
More information about the scm-commits
mailing list