components/bash/patches/bash42-030.patch
author Stefan Teleman <stefan.teleman@oracle.com>
Thu, 13 Dec 2012 15:52:21 -0800
changeset 1082 6d49548fa9da
permissions -rw-r--r--
15754923 SUNBT7111705 Upgrade bash to 4.2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1082
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     1
			     BASH PATCH REPORT
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     2
			     =================
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     3
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     4
Bash-Release:	4.2
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     5
Patch-ID:	bash42-030
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     6
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     7
Bug-Reported-by:	Roman Rakus <[email protected]>
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     8
Bug-Reference-ID:	<[email protected]>
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     9
Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2011-03/msg00126.html
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    10
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    11
Bug-Description:
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    12
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    13
When attempting to glob strings in a multibyte locale, and those strings
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    14
contain invalid multibyte characters that cause mbsnrtowcs to return 0,
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    15
the globbing code loops infinitely.
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    16
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    17
Patch (apply with `patch -p0'):
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    18
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    19
*** ../bash-4.2-patched/lib/glob/xmbsrtowcs.c	2010-05-30 18:36:27.000000000 -0400
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    20
--- lib/glob/xmbsrtowcs.c	2011-03-22 16:06:47.000000000 -0400
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    21
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    22
*** 36,39 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    23
--- 36,41 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    24
  #if HANDLE_MULTIBYTE
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    25
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    26
+ #define WSBUF_INC 32
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    27
+ 
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    28
  #ifndef FREE
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    29
  #  define FREE(x)	do { if (x) free (x); } while (0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    30
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    31
*** 149,153 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    32
    size_t wcnum;		/* Number of wide characters in WSBUF */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    33
    mbstate_t state;	/* Conversion State */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    34
!   size_t wcslength;	/* Number of wide characters produced by the conversion. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    35
    const char *end_or_backslash;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    36
    size_t nms;	/* Number of multibyte characters to convert at one time. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    37
--- 151,155 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    38
    size_t wcnum;		/* Number of wide characters in WSBUF */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    39
    mbstate_t state;	/* Conversion State */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    40
!   size_t n, wcslength;	/* Number of wide characters produced by the conversion. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    41
    const char *end_or_backslash;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    42
    size_t nms;	/* Number of multibyte characters to convert at one time. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    43
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    44
*** 172,176 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    45
        tmp_p = p;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    46
        tmp_state = state;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    47
!       wcslength = mbsnrtowcs(NULL, &tmp_p, nms, 0, &tmp_state);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    48
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    49
        /* Conversion failed. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    50
--- 174,189 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    51
        tmp_p = p;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    52
        tmp_state = state;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    53
! 
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    54
!       if (nms == 0 && *p == '\\')	/* special initial case */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    55
! 	nms = wcslength = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    56
!       else
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    57
! 	wcslength = mbsnrtowcs (NULL, &tmp_p, nms, 0, &tmp_state);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    58
! 
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    59
!       if (wcslength == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    60
! 	{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    61
! 	  tmp_p = p;		/* will need below */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    62
! 	  tmp_state = state;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    63
! 	  wcslength = 1;	/* take a single byte */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    64
! 	}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    65
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    66
        /* Conversion failed. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    67
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    68
*** 187,191 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    69
  	  wchar_t *wstmp;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    70
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    71
! 	  wsbuf_size = wcnum+wcslength+1;	/* 1 for the L'\0' or the potential L'\\' */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    72
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    73
  	  wstmp = (wchar_t *) realloc (wsbuf, wsbuf_size * sizeof (wchar_t));
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    74
--- 200,205 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    75
  	  wchar_t *wstmp;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    76
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    77
! 	  while (wsbuf_size < wcnum+wcslength+1) /* 1 for the L'\0' or the potential L'\\' */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    78
! 	    wsbuf_size += WSBUF_INC;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    79
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    80
  	  wstmp = (wchar_t *) realloc (wsbuf, wsbuf_size * sizeof (wchar_t));
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    81
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    82
*** 200,207 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    83
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    84
        /* Perform the conversion. This is assumed to return 'wcslength'.
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    85
!        * It may set 'p' to NULL. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    86
!       mbsnrtowcs(wsbuf+wcnum, &p, nms, wsbuf_size-wcnum, &state);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    87
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    88
!       wcnum += wcslength;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    89
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    90
        if (mbsinit (&state) && (p != NULL) && (*p == '\\'))
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    91
--- 214,229 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    92
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    93
        /* Perform the conversion. This is assumed to return 'wcslength'.
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    94
! 	 It may set 'p' to NULL. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    95
!       n = mbsnrtowcs(wsbuf+wcnum, &p, nms, wsbuf_size-wcnum, &state);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    96
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    97
!       /* Compensate for taking single byte on wcs conversion failure above. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    98
!       if (wcslength == 1 && (n == 0 || n == (size_t)-1))
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    99
! 	{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   100
! 	  state = tmp_state;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   101
! 	  p = tmp_p;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   102
! 	  wsbuf[wcnum++] = *p++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   103
! 	}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   104
!       else
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   105
!         wcnum += wcslength;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   106
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   107
        if (mbsinit (&state) && (p != NULL) && (*p == '\\'))
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   108
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   109
*** 231,236 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   110
     of DESTP and INDICESP are NULL. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   111
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   112
- #define WSBUF_INC 32
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   113
- 
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   114
  size_t
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   115
  xdupmbstowcs (destp, indicesp, src)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   116
--- 253,256 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   117
*** ../bash-4.2-patched/lib/glob/glob.c	2009-11-14 18:39:30.000000000 -0500
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   118
--- lib/glob/glob.c	2012-07-07 12:09:56.000000000 -0400
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   119
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   120
*** 201,206 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   121
    size_t pat_n, dn_n;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   122
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   123
    pat_n = xdupmbstowcs (&pat_wc, NULL, pat);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   124
!   dn_n = xdupmbstowcs (&dn_wc, NULL, dname);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   125
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   126
    ret = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   127
--- 201,209 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   128
    size_t pat_n, dn_n;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   129
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   130
+   pat_wc = dn_wc = (wchar_t *)NULL;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   131
+ 
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   132
    pat_n = xdupmbstowcs (&pat_wc, NULL, pat);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   133
!   if (pat_n != (size_t)-1)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   134
!     dn_n = xdupmbstowcs (&dn_wc, NULL, dname);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   135
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   136
    ret = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   137
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   138
*** 222,225 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   139
--- 225,230 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   140
  	ret = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   141
      }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   142
+   else
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   143
+     ret = skipname (pat, dname, flags);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   144
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   145
    FREE (pat_wc);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   146
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   147
*** 267,272 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   148
    n = xdupmbstowcs (&wpathname, NULL, pathname);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   149
    if (n == (size_t) -1)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   150
!     /* Something wrong. */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   151
!     return;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   152
    orig_wpathname = wpathname;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   153
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   154
--- 272,280 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   155
    n = xdupmbstowcs (&wpathname, NULL, pathname);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   156
    if (n == (size_t) -1)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   157
!     {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   158
!       /* Something wrong.  Fall back to single-byte */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   159
!       udequote_pathname (pathname);
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   160
!       return;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   161
!     }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   162
    orig_wpathname = wpathname;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   163
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   164
*** ../bash-4.2-patched/patchlevel.h	Sat Jun 12 20:14:48 2010
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   165
--- patchlevel.h	Thu Feb 24 21:41:34 2011
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   166
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   167
*** 26,30 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   168
     looks for to find the patch level (for the sccs version string). */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   169
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   170
! #define PATCHLEVEL 29
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   171
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   172
  #endif /* _PATCHLEVEL_H_ */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   173
--- 26,30 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   174
     looks for to find the patch level (for the sccs version string). */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   175
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   176
! #define PATCHLEVEL 30
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   177
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   178
  #endif /* _PATCHLEVEL_H_ */