]> git.pld-linux.org Git - packages/bash.git/blob - bash40-005
- up to 4.0.33
[packages/bash.git] / bash40-005
1                              BASH PATCH REPORT
2                              =================
3
4 Bash-Release: 4.0
5 Patch-ID: bash40-005
6
7 Bug-Reported-by:        Pierre Gaston <pierre.gaston@gmail.com>
8 Bug-Reference-ID:       <c440c9800902242338n69f594a4nd66b8748def9cf18@mail.gmail.com>
9 Bug-Reference-URL:      http://lists.gnu.org/archive/html/bug-bash/2009-02/msg00206.html
10
11 Bug-Description:
12
13 The `declare' builtin dumped core when attempting to assign associative
14 array indices containing some special characters, even when they were
15 quoted before being expanded.
16
17 Patch:
18
19 *** ../bash-4.0/builtins/declare.def    2009-01-04 14:32:22.000000000 -0500
20 --- builtins/declare.def        2009-02-26 11:40:16.000000000 -0500
21 ***************
22 *** 296,299 ****
23 --- 296,306 ----
24         if (t = strchr (name, '['))     /* ] */
25         {
26 +         /* If offset != 0 we have already validated any array reference */
27 +         if (offset == 0 && valid_array_reference (name) == 0)
28 +           {
29 +             sh_invalidid (name);
30 +             assign_error++;
31 +             NEXT_VARIABLE ();
32 +           }
33           subscript_start = t;
34           *t = '\0';
35 ***************
36 *** 485,489 ****
37           /* declare -a name[[n]] or declare name[n] makes name an indexed
38              array variable. */
39 !         else if ((making_array_special || (flags_on & att_array)) && array_p (var) == 0)
40             var = convert_var_to_array (var);
41   #endif /* ARRAY_VARS */
42 --- 492,496 ----
43           /* declare -a name[[n]] or declare name[n] makes name an indexed
44              array variable. */
45 !         else if ((making_array_special || (flags_on & att_array)) && array_p (var) == 0 && assoc_p (var) == 0)
46             var = convert_var_to_array (var);
47   #endif /* ARRAY_VARS */
48 *** ../bash-4.0/patchlevel.h    2009-01-04 14:32:40.000000000 -0500
49 --- patchlevel.h        2009-02-22 16:11:31.000000000 -0500
50 ***************
51 *** 26,30 ****
52      looks for to find the patch level (for the sccs version string). */
53   
54 ! #define PATCHLEVEL 4
55   
56   #endif /* _PATCHLEVEL_H_ */
57 --- 26,30 ----
58      looks for to find the patch level (for the sccs version string). */
59   
60 ! #define PATCHLEVEL 5
61   
62   #endif /* _PATCHLEVEL_H_ */
63
This page took 0.025108 seconds and 3 git commands to generate.