packages: bash/bash.spec, bash/bash40-029 (NEW), bash/bash40-030 (NEW), bas...

arekm arekm at pld-linux.org
Thu Sep 17 23:29:26 CEST 2009


Author: arekm                        Date: Thu Sep 17 21:29:26 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
- up to 4.0.33

---- Files affected:
packages/bash:
   bash.spec (1.200 -> 1.201) , bash40-029 (NONE -> 1.1)  (NEW), bash40-030 (NONE -> 1.1)  (NEW), bash40-031 (NONE -> 1.1)  (NEW), bash40-032 (NONE -> 1.1)  (NEW), bash40-033 (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/bash/bash.spec
diff -u packages/bash/bash.spec:1.200 packages/bash/bash.spec:1.201
--- packages/bash/bash.spec:1.200	Fri Jul 31 22:48:30 2009
+++ packages/bash/bash.spec	Thu Sep 17 23:29:20 2009
@@ -6,7 +6,7 @@
 %bcond_without	tests	# do not perform "make test"
 #
 %define		ver		4.0
-%define		patchlevel	28
+%define		patchlevel	33
 %define		rel		1
 Summary:	GNU Bourne Again Shell (bash)
 Summary(fr.UTF-8):	Le shell Bourne Again de GNU
@@ -316,6 +316,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.201  2009/09/17 21:29:20  arekm
+- up to 4.0.33
+
 Revision 1.200  2009/07/31 20:48:30  arekm
 - up to 4.0.28
 

================================================================
Index: packages/bash/bash40-029
diff -u /dev/null packages/bash/bash40-029:1.1
--- /dev/null	Thu Sep 17 23:29:26 2009
+++ packages/bash/bash40-029	Thu Sep 17 23:29:20 2009
@@ -0,0 +1,106 @@
+			     BASH PATCH REPORT
+			     =================
+
+Bash-Release: 4.0
+Patch-ID: bash40-029
+
+Bug-Reported-by:	Christian Krause <chkr at plauener.de>
+Bug-Reference-ID:	Thu, 25 Jun 2009 21:47:59 +0200
+Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2009-06/msg00078.html
+
+Bug-Description:
+
+Previous versions of bash accepted strings in the initial environment
+that were not valid shell variable assignments, usually because the
+names were invalid, but still created shell variables from them and
+passed them to child processes in the environment.
+
+Bash-4.0 ignores those names and does not pass them to child processes.
+Some users and automated processes depend on invalid variables being
+ignored and passed to child processes.
+
+This patch makes bash continue to ignore the invalid names, but pass
+them to child processes in the export environment.
+
+Patch:
+
+*** ../bash-4.0-patched/variables.c	2009-01-04 14:32:46.000000000 -0500
+--- variables.c	2009-06-29 09:17:20.000000000 -0400
+***************
+*** 253,256 ****
+--- 255,259 ----
+  static int visible_var __P((SHELL_VAR *));
+  static int visible_and_exported __P((SHELL_VAR *));
++ static int export_environment_candidate __P((SHELL_VAR *));
+  static int local_and_exported __P((SHELL_VAR *));
+  static int variable_in_context __P((SHELL_VAR *));
+***************
+*** 376,383 ****
+  #  endif
+  #endif
+        else if (legal_identifier (name))
+  	{
+  	  temp_var = bind_variable (name, string, 0);
+! 	  VSETATTR (temp_var, (att_exported | att_imported));
+  	  array_needs_making = 1;
+  	}
+--- 379,393 ----
+  #  endif
+  #endif
++ #if 0
+        else if (legal_identifier (name))
++ #else
++       else
++ #endif
+  	{
+  	  temp_var = bind_variable (name, string, 0);
+! 	  if (legal_identifier (name))
+! 	    VSETATTR (temp_var, (att_exported | att_imported));
+! 	  else
+! 	    VSETATTR (temp_var, (att_exported | att_imported | att_invisible));
+  	  array_needs_making = 1;
+  	}
+***************
+*** 3083,3086 ****
+--- 3098,3111 ----
+  }
+  
++ /* Candidate variables for the export environment are either valid variables
++    with the export attribute or invalid variables inherited from the initial
++    environment and simply passed through. */
++ static int
++ export_environment_candidate (var)
++      SHELL_VAR *var;
++ {
++   return (exported_p (var) && (invisible_p (var) == 0 || imported_p (var)));
++ }
++ 
+  /* Return non-zero if VAR is a local variable in the current context and
+     is exported. */
+***************
+*** 3439,3443 ****
+--- 3464,3472 ----
+    SHELL_VAR **vars;
+  
++ #if 0
+    vars = map_over (visible_and_exported, vcxt);
++ #else
++   vars = map_over (export_environment_candidate, vcxt);
++ #endif
+  
+    if (vars == 0)
+*** ../bash-4.0/patchlevel.h	2009-01-04 14:32:40.000000000 -0500
+--- patchlevel.h	2009-02-22 16:11:31.000000000 -0500
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 28
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 29
+  
+  #endif /* _PATCHLEVEL_H_ */

================================================================
Index: packages/bash/bash40-030
diff -u /dev/null packages/bash/bash40-030:1.1
--- /dev/null	Thu Sep 17 23:29:26 2009
+++ packages/bash/bash40-030	Thu Sep 17 23:29:20 2009
@@ -0,0 +1,64 @@
+			     BASH PATCH REPORT
+			     =================
+
+Bash-Release: 4.0
+Patch-ID: bash40-030
+
+Bug-Reported-by:	Henning Bekel <h.bekel at googlemail.com>
+Bug-Reference-ID:	<7c6eacF262ctuU1 at mid.individual.net>
+Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2009-07/msg00054.html
+
+Bug-Description:
+
+A shell function invoked with `bind -x' is supposed to be able to move the
+cursor by setting READLINE_POINT.  The effects of this assignment were
+sometimes ignored.
+
+Patch:
+
+*** ../bash-4.0-patched/bashline.c	2009-01-08 09:29:24.000000000 -0500
+--- bashline.c	2009-07-16 14:13:41.000000000 -0400
+***************
+*** 3389,3393 ****
+    register int i;
+    intmax_t mi;
+-   int save_point;
+    sh_parser_state_t ps;
+    char *cmd, *value, *l;
+--- 3389,3392 ----
+***************
+*** 3433,3437 ****
+      VSETATTR (v, att_exported);
+    l = value_cell (v);
+-   save_point = rl_point;
+    value = inttostr (rl_point, ibuf, sizeof (ibuf));
+    v = bind_int_variable ("READLINE_POINT", value);
+--- 3432,3435 ----
+***************
+*** 3451,3455 ****
+      {
+        i = mi;
+!       if (i != save_point)
+  	{
+  	  rl_point = i;
+--- 3449,3453 ----
+      {
+        i = mi;
+!       if (i != rl_point)
+  	{
+  	  rl_point = i;
+*** ../bash-4.0/patchlevel.h	2009-01-04 14:32:40.000000000 -0500
+--- patchlevel.h	2009-02-22 16:11:31.000000000 -0500
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 29
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 30
+  
+  #endif /* _PATCHLEVEL_H_ */

================================================================
Index: packages/bash/bash40-031
diff -u /dev/null packages/bash/bash40-031:1.1
--- /dev/null	Thu Sep 17 23:29:26 2009
+++ packages/bash/bash40-031	Thu Sep 17 23:29:20 2009
@@ -0,0 +1,62 @@
+			     BASH PATCH REPORT
+			     =================
+
+Bash-Release: 4.0
+Patch-ID: bash40-031
+
+Bug-Reported-by:	Roman Rakus <rrakus at redhat.com>
+Bug-Reference-ID:	<4A93F6E9.4050401 at redhat.com>
+Bug-Reference-URL:	
+
+Bug-Description:
+
+An implicit assignment to index "0" of an existing array variable caused
+the shell to crash when the variable was unset.
+
+Patch:
+
+*** ../bash-4.0-patched/arrayfunc.c	2009-03-08 21:24:39.000000000 -0400
+--- arrayfunc.c	2009-08-24 09:29:43.000000000 -0400
+***************
+*** 99,103 ****
+    hash = assoc_create (0);
+    if (oldval)
+!     assoc_insert (hash, "0", oldval);
+  
+    FREE (value_cell (var));
+--- 99,103 ----
+    hash = assoc_create (0);
+    if (oldval)
+!     assoc_insert (hash, savestring ("0"), oldval);
+  
+    FREE (value_cell (var));
+*** ../bash-4.0-patched/variables.c	2009-01-04 14:32:46.000000000 -0500
+--- variables.c	2009-08-24 09:29:58.000000000 -0400
+***************
+*** 2218,2222 ****
+        else if (assoc_p (entry))
+  	{
+! 	  assoc_insert (assoc_cell (entry), "0", newval);
+  	  free (newval);
+  	}
+--- 2218,2222 ----
+        else if (assoc_p (entry))
+  	{
+! 	  assoc_insert (assoc_cell (entry), savestring ("0"), newval);
+  	  free (newval);
+  	}
+*** ../bash-4.0/patchlevel.h	2009-01-04 14:32:40.000000000 -0500
+--- patchlevel.h	2009-02-22 16:11:31.000000000 -0500
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 30
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 31
+  
+  #endif /* _PATCHLEVEL_H_ */

================================================================
Index: packages/bash/bash40-032
diff -u /dev/null packages/bash/bash40-032:1.1
--- /dev/null	Thu Sep 17 23:29:26 2009
+++ packages/bash/bash40-032	Thu Sep 17 23:29:20 2009
@@ -0,0 +1,46 @@
+			     BASH PATCH REPORT
+			     =================
+
+Bash-Release: 4.0
+Patch-ID: bash40-032
+
+Bug-Reported-by:	muszi at muszi.kite.hu
+Bug-Reference-ID:	<20090826113159.18815.qmail at muszi.kite.hu>
+Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2009-08/msg00090.html
+
+Bug-Description:
+
+Bash-4.0 has a memory leak when processing ${!prefix@}.
+
+Patch:
+
+*** ../bash-4.0-patched/subst.c	2009-07-22 23:18:55.000000000 -0400
+--- subst.c	2009-08-26 23:08:51.000000000 -0400
+***************
+*** 6607,6611 ****
+  	}
+        free (x);
+!       free (xlist);
+        free (temp1);
+        *indexp = sindex;
+--- 6769,6773 ----
+  	}
+        free (x);
+!       dispose_words (xlist);
+        free (temp1);
+        *indexp = sindex;
+*** ../bash-4.0/patchlevel.h	2009-01-04 14:32:40.000000000 -0500
+--- patchlevel.h	2009-02-22 16:11:31.000000000 -0500
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 31
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 32
+  
+  #endif /* _PATCHLEVEL_H_ */

================================================================
Index: packages/bash/bash40-033
diff -u /dev/null packages/bash/bash40-033:1.1
--- /dev/null	Thu Sep 17 23:29:26 2009
+++ packages/bash/bash40-033	Thu Sep 17 23:29:20 2009
@@ -0,0 +1,50 @@
+			     BASH PATCH REPORT
+			     =================
+
+Bash-Release: 4.0
+Patch-ID: bash40-033
+
+Bug-Reported-by:	Dr. Werner Fink <werner at suse.de>
+Bug-Reference-ID:	<200907010951.n619p76I013912 at boole.suse.de>
+Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2009-07/msg00000.html
+
+Bug-Description:
+
+Bash-4.0 has a memory leak in the `read' builtin when the number of fields
+read is not the same as the number of variables passed as arguments.
+
+Patch:
+
+*** ../bash-4.0-patched/builtins/read.def	2009-03-08 21:24:45.000000000 -0400
+--- builtins/read.def	2009-07-01 15:32:42.000000000 -0400
+***************
+*** 764,768 ****
+  	tofree = input_string = t;
+        else
+! 	input_string = strip_trailing_ifs_whitespace (t1, ifs_chars, saw_escape);
+      }
+  #endif
+--- 764,771 ----
+  	tofree = input_string = t;
+        else
+! 	{
+! 	  input_string = strip_trailing_ifs_whitespace (t1, ifs_chars, saw_escape);
+! 	  tofree = t;
+! 	}
+      }
+  #endif
+*** ../bash-4.0/patchlevel.h	2009-01-04 14:32:40.000000000 -0500
+--- patchlevel.h	2009-02-22 16:11:31.000000000 -0500
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 32
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 33
+  
+  #endif /* _PATCHLEVEL_H_ */
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/bash/bash.spec?r1=1.200&r2=1.201&f=u



More information about the pld-cvs-commit mailing list