]> git.ipfire.org Git - ipfire-2.x.git/blob - src/patches/bash/bash32-047
Merge remote-tracking branch 'origin/next' into thirteen
[ipfire-2.x.git] / src / patches / bash / bash32-047
1 BASH PATCH REPORT
2 =================
3
4 Bash-Release: 3.2
5 Patch-ID: bash32-047
6
7 Bug-Reported-by: Roman Rakus <rrakus@redhat.com>
8 Bug-Reference-ID: <48A89EBC.906@redhat.com>
9 Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-08/msg00026.html
10
11 Bug-Description:
12
13 When using the `.' (source) builtin, under certain circumstances bash was
14 too careful in discarding state to preserve internal consistency. One
15 effect was that assignments to readonly variables would cause entire scripts
16 to be aborted instead of execution of the offending command. This behavior
17 was introduced by bash-3.2 patch 20.
18
19 Patch:
20
21 *** /usr/src/local/chet/src/bash/bash-3.2-patched/subst.c 2008-04-29 21:24:55.000000000 -0400
22 --- subst.c 2008-11-13 17:44:25.000000000 -0500
23 ***************
24 *** 138,142 ****
25 extern int last_command_exit_value, last_command_exit_signal;
26 extern int subshell_environment;
27 ! extern int subshell_level;
28 extern int eof_encountered;
29 extern int return_catch_flag, return_catch_value;
30 --- 138,142 ----
31 extern int last_command_exit_value, last_command_exit_signal;
32 extern int subshell_environment;
33 ! extern int subshell_level, parse_and_execute_level;
34 extern int eof_encountered;
35 extern int return_catch_flag, return_catch_value;
36 ***************
37 *** 7673,7677 ****
38 expanding_redir = 0;
39
40 ! top_level_cleanup (); /* from sig.c */
41
42 jump_to_top_level (v);
43 --- 7673,7679 ----
44 expanding_redir = 0;
45
46 ! if (parse_and_execute_level == 0)
47 ! top_level_cleanup (); /* from sig.c */
48 !
49
50 jump_to_top_level (v);
51 *** ../bash-3.2/patchlevel.h Thu Apr 13 08:31:04 2006
52 --- patchlevel.h Mon Oct 16 14:22:54 2006
53 ***************
54 *** 26,30 ****
55 looks for to find the patch level (for the sccs version string). */
56
57 ! #define PATCHLEVEL 46
58
59 #endif /* _PATCHLEVEL_H_ */
60 --- 26,30 ----
61 looks for to find the patch level (for the sccs version string). */
62
63 ! #define PATCHLEVEL 47
64
65 #endif /* _PATCHLEVEL_H_ */