summaryrefslogtreecommitdiff
path: root/debian/patches/bash32-007.dpatch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/bash32-007.dpatch')
-rw-r--r--debian/patches/bash32-007.dpatch74
1 files changed, 74 insertions, 0 deletions
diff --git a/debian/patches/bash32-007.dpatch b/debian/patches/bash32-007.dpatch
new file mode 100644
index 0000000..0dd829d
--- /dev/null
+++ b/debian/patches/bash32-007.dpatch
@@ -0,0 +1,74 @@
+#! /bin/sh -e
+
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+ pdir="-d $3"
+elif [ $# -ne 1 ]; then
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+fi
+case "$1" in
+ -patch) patch $pdir -f --no-backup-if-mismatch -p0 < $0;;
+ -unpatch) patch $pdir -f --no-backup-if-mismatch -R -p0 < $0;;
+ *)
+ echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+ exit 1
+esac
+exit 0
+
+# DP: bash-3.2 upstream patch bash32-007
+
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 3.2
+Patch-ID: bash32-007
+
+Bug-Reported-by: jidanni@jidanni.org
+Bug-Reference-ID: <E1Gkg12-00017D-Fm@jidanni.org>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00039.html
+
+Bug-Description:
+
+When removing the current or previous job from the jobs list, bash incorrectly
+resets the current job under some circumstances.
+
+Patch:
+
+*** ../bash-3.2-patched/jobs.c Sat Jul 29 16:40:48 2006
+--- jobs.c Fri Nov 24 14:50:01 2006
+***************
+*** 985,990 ****
+ if (temp == 0)
+ return;
+- if (job_index == js.j_current || job_index == js.j_previous)
+- reset_current ();
+
+ if ((dflags & DEL_NOBGPID) == 0)
+--- 985,988 ----
+***************
+*** 1029,1032 ****
+--- 1027,1033 ----
+ else if (jobs[js.j_firstj] == 0 || jobs[js.j_lastj] == 0)
+ reset_job_indices ();
++
++ if (job_index == js.j_current || job_index == js.j_previous)
++ reset_current ();
+ }
+
+*** ../bash-3.2/patchlevel.h Thu Apr 13 08:31:04 2006
+--- patchlevel.h Mon Oct 16 14:22:54 2006
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 6
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 7
+
+ #endif /* _PATCHLEVEL_H_ */
+
+