diff options
Diffstat (limited to 'testing/source/bash/bash-4.0-patches/bash40-012')
-rw-r--r-- | testing/source/bash/bash-4.0-patches/bash40-012 | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/testing/source/bash/bash-4.0-patches/bash40-012 b/testing/source/bash/bash-4.0-patches/bash40-012 new file mode 100644 index 00000000..014eae69 --- /dev/null +++ b/testing/source/bash/bash-4.0-patches/bash40-012 @@ -0,0 +1,47 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.0 +Patch-ID: bash40-012 + +Bug-Reported-by: "Clark J. Wang" <dearvoid@gmail.com> +Bug-Reference-ID: <a96f63770903132300v7816dfb7hb7f48d46048bf3cb@mail.gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00129.html + +Bug-Description: + +A case statement using the ;& pattern terminator followed immediately by +"esac" caused a core dump due to a null pointer dereference. + +Patch: + +*** ../bash-4.0-patched/execute_cmd.c 2009-02-13 16:41:41.000000000 -0500 +--- execute_cmd.c 2009-03-14 13:23:00.000000000 -0400 +*************** +*** 2931,2935 **** + } + while ((clauses->flags & CASEPAT_FALLTHROUGH) && (clauses = clauses->next)); +! if ((clauses->flags & CASEPAT_TESTNEXT) == 0) + EXIT_CASE (); + else +--- 2931,2935 ---- + } + while ((clauses->flags & CASEPAT_FALLTHROUGH) && (clauses = clauses->next)); +! if (clauses == 0 || (clauses->flags & CASEPAT_TESTNEXT) == 0) + EXIT_CASE (); + else +*** ../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 11 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 12 + + #endif /* _PATCHLEVEL_H_ */ |