summaryrefslogtreecommitdiffstats
path: root/package/bash/bash31-005
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2006-03-19 08:52:48 +0000
committerMike Frysinger <vapier@gentoo.org>2006-03-19 08:52:48 +0000
commitb8601dd7ea62a7fa99450878b54c3da58fc06b12 (patch)
tree298fcc95474f4a4cef9a96e9a5b0da651c90e06a /package/bash/bash31-005
parentd4f0350c6da4a2a801f1e8ab28b8d914953a3d86 (diff)
downloadbuildroot-novena-b8601dd7ea62a7fa99450878b54c3da58fc06b12.tar.gz
buildroot-novena-b8601dd7ea62a7fa99450878b54c3da58fc06b12.zip
import bash-3.1 patches
Diffstat (limited to 'package/bash/bash31-005')
-rw-r--r--package/bash/bash31-00554
1 files changed, 54 insertions, 0 deletions
diff --git a/package/bash/bash31-005 b/package/bash/bash31-005
new file mode 100644
index 000000000..9a451045c
--- /dev/null
+++ b/package/bash/bash31-005
@@ -0,0 +1,54 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 3.1
+Patch-ID: bash31-005
+
+Bug-Reported-by:
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+When tilde expansion fails, POSIX leaves it unspecified whether or not the
+word undergoes the additional word expansions. Bash-3.1 as distributed
+skipped the rest of the expansions; this patch restores the bash-3.0 behavior.
+
+This means that something like
+ USER=ratbert
+ echo ~$USER
+
+will echo `~ratbert' rather than `~$USER'.
+
+Patch:
+
+*** bash-3.1/subst.c Mon Oct 24 09:51:13 2005
+--- bash-3.1/subst.c Fri Dec 30 12:11:53 2005
+***************
+*** 6796,6799 ****
+--- 6823,6832 ----
+ {
+ temp1 = bash_tilde_expand (temp, tflag);
++ if (temp1 && *temp1 == '~' && STREQ (temp, temp1))
++ {
++ FREE (temp);
++ FREE (temp1);
++ goto add_character; /* tilde expansion failed */
++ }
+ free (temp);
+ temp = temp1;
+*** bash-3.1/patchlevel.h Wed Jul 20 13:58:20 2005
+--- bash-3.1/patchlevel.h Wed Dec 7 13:48:42 2005
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 4
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 5
+
+ #endif /* _PATCHLEVEL_H_ */