more bash patches
authorMike Frysinger <vapier@gentoo.org>
Tue, 11 Jan 2005 01:05:55 +0000 (01:05 -0000)
committerMike Frysinger <vapier@gentoo.org>
Tue, 11 Jan 2005 01:05:55 +0000 (01:05 -0000)
package/bash/bash30-014 [new file with mode: 0644]
package/bash/bash30-015 [new file with mode: 0644]
package/bash/bash30-016 [new file with mode: 0644]

diff --git a/package/bash/bash30-014 b/package/bash/bash30-014
new file mode 100644 (file)
index 0000000..838eee5
--- /dev/null
@@ -0,0 +1,52 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release: 3.0
+Patch-ID: bash30-014
+
+Bug-Reported-by: agriffis@gentoo.org
+Bug-Reference-ID: <20040929024759.A437FEB1E0@piment.flatmonk.org>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2004-09/msg00250.html
+
+Bug-Description:
+
+        #
+        # BROKEN case: variable with braces inside quotes
+        #
+
+        $ D=W
+        $ echo "${D}"{illy,onka}  => W{illy,onka}
+
+Patch:
+
+*** ../bash-3.0-patched/braces.c       Wed Sep  8 11:07:53 2004
+--- braces.c   Fri Sep 17 18:42:36 2004
+***************
+*** 403,407 ****
+         pass_next = 1;
+         i++;
+!        level++;
+         continue;
+       }
+--- 403,408 ----
+         pass_next = 1;
+         i++;
+!        if (quoted == 0)
+!          level++;
+         continue;
+       }
+*** ../bash-3.0-patched/patchlevel.h   Wed Aug 22 08:05:39 2001
+--- patchlevel.h       Thu Sep  2 15:04:32 2004
+***************
+*** 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/package/bash/bash30-015 b/package/bash/bash30-015
new file mode 100644 (file)
index 0000000..ee5bb5a
--- /dev/null
@@ -0,0 +1,56 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release: 3.0
+Patch-ID: bash30-015
+
+Bug-Reported-by: opengeometry@yahoo.ca
+Bug-Reference-ID: <200410202012.i9KKCTEB001860@node1.opengeometry.net>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2004-10/msg00297.html
+
+Bug-Description:
+
+   Shell variable can start with number and can even be printed with
+    'declare', as in
+        1=aaa
+        1a=bbb
+        declare -p 1 1a
+
+    But, they can't be removed, as in
+        unset 1 1a              --> ...: not a valid identifier
+
+    Bash-2.05b correctly gives me error, however.
+
+Patch:
+
+*** ../bash-3.0-patched/general.c      Wed Apr 14 23:20:13 2004
+--- general.c  Wed Oct 20 16:59:59 2004
+***************
+*** 268,272 ****
+  
+  #if defined (ARRAY_VARS)
+!   if ((legal_variable_starter (c) == 0) && (flags && c != '[')) /* ] */
+  #else
+    if (legal_variable_starter (c) == 0)
+--- 268,272 ----
+  
+  #if defined (ARRAY_VARS)
+!   if ((legal_variable_starter (c) == 0) && (flags == 0 || c != '[')) /* ] */
+  #else
+    if (legal_variable_starter (c) == 0)
+
+*** ../bash-3.0/patchlevel.h   Wed Aug 22 08:05:39 2001
+--- patchlevel.h       Thu Sep  2 15:04:32 2004
+***************
+*** 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/package/bash/bash30-016 b/package/bash/bash30-016
new file mode 100644 (file)
index 0000000..05de8e9
--- /dev/null
@@ -0,0 +1,84 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release: 3.0
+Patch-ID: bash30-016
+
+Bug-Reported-by:  William Park <opengeometry@yahoo.ca>
+Bug-Reference-ID: <200411012217.iA1MHxL7031818@node1.opengeometry.net>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2004-11/msg00017.html
+
+Bug-Description:
+
+        Offset from the end of array in ${var: -n} is still off by 1.  Eg.
+            x=( {0..9} )
+            echo ${x[*]: -1}            --> 8 9
+
+Patch:
+
+*** ../bash-3.0-patched/subst.c        Wed Sep  8 11:07:55 2004
+--- subst.c    Tue Nov  9 16:26:59 2004
+***************
+*** 4900,4905 ****
+      case VT_ARRAYVAR:
+        a = (ARRAY *)value;
+!       /* For arrays, the first value deals with array indices. */
+!       len = array_max_index (a);     /* arrays index from 0 to n - 1 */
+        break;
+  #endif
+--- 4900,4906 ----
+      case VT_ARRAYVAR:
+        a = (ARRAY *)value;
+!       /* For arrays, the first value deals with array indices.  Negative
+!       offsets count from one past the array's maximum index. */
+!       len = array_max_index (a) + (*e1p < 0);        /* arrays index from 0 to n - 1 */
+        break;
+  #endif
+*** ../bash-3.0-patched/tests/array.tests      Sat Oct  4 23:25:00 2003
+--- tests/array.tests  Tue Nov  9 16:36:29 2004
+***************
+*** 323,327 ****
+  echo positive offset - expect five seven
+  echo ${av[@]:5:2}
+! echo negative offset - expect five seven
+  echo ${av[@]: -2:2}
+  
+--- 323,327 ----
+  echo positive offset - expect five seven
+  echo ${av[@]:5:2}
+! echo negative offset to unset element - expect seven
+  echo ${av[@]: -2:2}
+  
+*** ../bash-3.0-patched/tests/array.right      Sat Oct  4 23:25:10 2003
+--- tests/array.right  Tue Nov  9 16:37:25 2004
+***************
+*** 171,176 ****
+  positive offset - expect five seven
+  five seven
+! negative offset - expect five seven
+! five seven
+  positive offset 2 - expect seven
+  seven
+--- 171,176 ----
+  positive offset - expect five seven
+  five seven
+! negative offset to unset element - expect seven
+! seven
+  positive offset 2 - expect seven
+  seven
+*** ../bash-3.0-patched/patchlevel.h   Tue Oct 26 17:13:29 2004
+--- patchlevel.h       Tue Nov  9 16:31:24 2004
+***************
+*** 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_ */
+