components/bash/patches/bash42-047.patch
changeset 5518 c47fe0edc204
parent 5517 7758049098f4
child 5519 a02d4d12218f
equal deleted inserted replaced
5517:7758049098f4 5518:c47fe0edc204
     1 			     BASH PATCH REPORT
       
     2 			     =================
       
     3 
       
     4 Bash-Release:	4.2
       
     5 Patch-ID:	bash42-047
       
     6 
       
     7 Bug-Reported-by:	Matthew Riley <[email protected]>
       
     8 Bug-Reference-ID:	<CA+NEdkwP3gw+gbcF5+xnR1pvcuzb1mDVzvmuJOpHRGHA9T7VFg@mail.gmail.com>
       
     9 Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2013-03/msg00047.html
       
    10 
       
    11 Bug-Description:
       
    12 
       
    13 The function that shortens pathnames for $PS1 according to the value of
       
    14 $PROMPT_DIRTRIM uses memcpy on potentially-overlapping regions of memory,
       
    15 when it should use memmove.  The result is garbled pathnames in prompt
       
    16 strings.
       
    17 
       
    18 Patch (apply with `patch -p0'):
       
    19 
       
    20 *** ../bash-4.2-patched/general.c	2010-12-12 15:06:27.000000000 -0500
       
    21 --- general.c	2014-01-30 16:46:15.000000000 -0500
       
    22 ***************
       
    23 *** 767,771 ****
       
    24   
       
    25     nlen = nend - ntail;
       
    26 !   memcpy (nbeg, ntail, nlen);
       
    27     nbeg[nlen] = '\0';
       
    28   
       
    29 --- 767,771 ----
       
    30   
       
    31     nlen = nend - ntail;
       
    32 !   memmove (nbeg, ntail, nlen);
       
    33     nbeg[nlen] = '\0';
       
    34   
       
    35 *** ../bash-4.2-patched/patchlevel.h	Sat Jun 12 20:14:48 2010
       
    36 --- patchlevel.h	Thu Feb 24 21:41:34 2011
       
    37 ***************
       
    38 *** 26,30 ****
       
    39      looks for to find the patch level (for the sccs version string). */
       
    40   
       
    41 ! #define PATCHLEVEL 46
       
    42   
       
    43   #endif /* _PATCHLEVEL_H_ */
       
    44 --- 26,30 ----
       
    45      looks for to find the patch level (for the sccs version string). */
       
    46   
       
    47 ! #define PATCHLEVEL 47
       
    48   
       
    49   #endif /* _PATCHLEVEL_H_ */