#! /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-006 BASH PATCH REPORT ================= Bash-Release: 3.2 Patch-ID: bash32-006 Bug-Reported-by: ebb9@byu.net Bug-Reference-ID: <45540862.9030900@byu.net> Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00017.html http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00016.html Bug-Description: In some cases, code that is intended to be used in the presence of multibyte characters is called when no such characters are present, leading to incorrect display position calculations and incorrect redisplay. Patch: *** ../bash-3.2-patched/lib/readline/display.c Thu Sep 14 14:20:12 2006 --- lib/readline/display.c Mon Nov 13 17:55:57 2006 *************** *** 2381,2384 **** --- 2409,2414 ---- if (end <= start) return 0; + if (MB_CUR_MAX == 1 || rl_byte_oriented) + return (end - start); memset (&ps, 0, sizeof (mbstate_t)); *** ../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 5 #endif /* _PATCHLEVEL_H_ */ --- 26,30 ---- looks for to find the patch level (for the sccs version string). */ ! #define PATCHLEVEL 6 #endif /* _PATCHLEVEL_H_ */