components/bash/patches/bash42-003.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-003
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:	Clark J. Wang <[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-02/msg00136.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 using the pattern replacement and pattern removal word expansions, bash
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    14
miscalculates the possible match length in the presence of an unescaped left
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    15
bracket without a closing right bracket, resulting in a failure to match
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    16
the pattern.
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    17
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    18
Patch (apply with `patch -p0'):
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    19
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    20
*** ../bash-4.2-patched/lib/glob/gmisc.c	2011-02-05 16:11:17.000000000 -0500
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    21
--- lib/glob/gmisc.c	2011-02-18 23:53:42.000000000 -0500
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    22
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    23
*** 78,83 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    24
       size_t wmax;
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
!   wchar_t wc, *wbrack;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    27
!   int matlen, t, in_cclass, in_collsym, in_equiv;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    28
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    29
    if (*wpat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    30
--- 78,83 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    31
       size_t wmax;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    32
  {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    33
!   wchar_t wc;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    34
!   int matlen, bracklen, t, in_cclass, in_collsym, in_equiv;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    35
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    36
    if (*wpat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    37
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    38
*** 119,123 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    39
  	case L'[':
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    40
  	  /* scan for ending `]', skipping over embedded [:...:] */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    41
! 	  wbrack = wpat;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    42
  	  wc = *wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    43
  	  do
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    44
--- 119,123 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    45
  	case L'[':
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    46
  	  /* scan for ending `]', skipping over embedded [:...:] */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    47
! 	  bracklen = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    48
  	  wc = *wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    49
  	  do
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    50
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    51
*** 125,140 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    52
  	      if (wc == 0)
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
! 	          matlen += wpat - wbrack - 1;	/* incremented below */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    55
! 	          break;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    56
  	        }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    57
  	      else if (wc == L'\\')
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
! 		  wc = *wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    60
! 		  if (*wpat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    61
! 		    break;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    62
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    63
  	      else if (wc == L'[' && *wpat == L':')	/* character class */
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
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    66
  		  in_cclass = 1;
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
--- 125,148 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    69
  	      if (wc == 0)
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
! 		  wpat--;			/* back up to NUL */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    72
! 	          matlen += bracklen;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    73
! 	          goto bad_bracket;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    74
  	        }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    75
  	      else if (wc == L'\\')
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
! 		  /* *wpat == backslash-escaped character */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    78
! 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    79
! 		  /* If the backslash or backslash-escape ends the string,
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    80
! 		     bail.  The ++wpat skips over the backslash escape */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    81
! 		  if (*wpat == 0 || *++wpat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    82
! 		    {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    83
! 		      matlen += bracklen;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    84
! 		      goto bad_bracket;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    85
! 		    }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    86
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    87
  	      else if (wc == L'[' && *wpat == L':')	/* character class */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    88
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    89
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    90
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    91
  		  in_cclass = 1;
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
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    94
*** 142,145 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    95
--- 150,154 ----
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
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    98
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    99
  		  in_cclass = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   100
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   101
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   102
*** 147,152 ****
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
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   105
  		  if (*wpat == L']')	/* right bracket can appear as collating symbol */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   106
! 		    wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   107
  		  in_collsym = 1;
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
--- 156,165 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   110
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   111
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   112
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   113
  		  if (*wpat == L']')	/* right bracket can appear as collating symbol */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   114
! 		    {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   115
! 		      wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   116
! 		      bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   117
! 		    }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   118
  		  in_collsym = 1;
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
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   121
*** 154,157 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   122
--- 167,171 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   123
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   124
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   125
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   126
  		  in_collsym = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   127
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   128
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   129
*** 159,164 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   130
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   131
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   132
  		  if (*wpat == L']')	/* right bracket can appear as equivalence class */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   133
! 		    wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   134
  		  in_equiv = 1;
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
--- 173,182 ----
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
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   139
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   140
  		  if (*wpat == L']')	/* right bracket can appear as equivalence class */
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
! 		      wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   143
! 		      bracklen++;
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
  		  in_equiv = 1;
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
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   148
*** 166,174 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   149
--- 184,196 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   150
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   151
  		  wpat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   152
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   153
  		  in_equiv = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   154
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   155
+ 	      else
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   156
+ 		bracklen++;
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
  	  while ((wc = *wpat++) != L']');
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   159
  	  matlen++;		/* bracket expression can only match one char */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   160
+ bad_bracket:
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   161
  	  break;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   162
  	}
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
*** 214,219 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   165
       size_t max;
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
!   char c, *brack;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   168
!   int matlen, t, in_cclass, in_collsym, in_equiv;
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
    if (*pat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   171
--- 236,241 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   172
       size_t max;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   173
  {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   174
!   char c;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   175
!   int matlen, bracklen, t, in_cclass, in_collsym, in_equiv;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   176
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   177
    if (*pat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   178
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   179
*** 255,259 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   180
  	case '[':
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   181
  	  /* scan for ending `]', skipping over embedded [:...:] */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   182
! 	  brack = pat;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   183
  	  c = *pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   184
  	  do
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   185
--- 277,281 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   186
  	case '[':
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   187
  	  /* scan for ending `]', skipping over embedded [:...:] */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   188
! 	  bracklen = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   189
  	  c = *pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   190
  	  do
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   191
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   192
*** 261,276 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   193
  	      if (c == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   194
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   195
! 	          matlen += pat - brack - 1;	/* incremented below */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   196
! 	          break;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   197
  	        }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   198
  	      else if (c == '\\')
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   199
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   200
! 		  c = *pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   201
! 		  if (*pat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   202
! 		    break;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   203
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   204
  	      else if (c == '[' && *pat == ':')	/* character class */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   205
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   206
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   207
  		  in_cclass = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   208
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   209
--- 283,306 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   210
  	      if (c == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   211
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   212
! 		  pat--;			/* back up to NUL */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   213
! 		  matlen += bracklen;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   214
! 		  goto bad_bracket;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   215
  	        }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   216
  	      else if (c == '\\')
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   217
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   218
! 		  /* *pat == backslash-escaped character */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   219
! 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   220
! 		  /* If the backslash or backslash-escape ends the string,
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   221
! 		     bail.  The ++pat skips over the backslash escape */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   222
! 		  if (*pat == 0 || *++pat == 0)
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   223
! 		    {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   224
! 		      matlen += bracklen;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   225
! 		      goto bad_bracket;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   226
! 		    }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   227
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   228
  	      else if (c == '[' && *pat == ':')	/* character class */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   229
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   230
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   231
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   232
  		  in_cclass = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   233
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   234
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   235
*** 278,281 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   236
--- 308,312 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   237
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   238
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   239
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   240
  		  in_cclass = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   241
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   242
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   243
*** 283,288 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   244
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   245
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   246
  		  if (*pat == ']')	/* right bracket can appear as collating symbol */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   247
! 		    pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   248
  		  in_collsym = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   249
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   250
--- 314,323 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   251
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   252
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   253
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   254
  		  if (*pat == ']')	/* right bracket can appear as collating symbol */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   255
! 		    {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   256
! 		      pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   257
! 		      bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   258
! 		    }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   259
  		  in_collsym = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   260
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   261
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   262
*** 290,293 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   263
--- 325,329 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   264
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   265
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   266
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   267
  		  in_collsym = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   268
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   269
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   270
*** 295,300 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   271
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   272
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   273
  		  if (*pat == ']')	/* right bracket can appear as equivalence class */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   274
! 		    pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   275
  		  in_equiv = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   276
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   277
--- 331,340 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   278
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   279
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   280
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   281
  		  if (*pat == ']')	/* right bracket can appear as equivalence class */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   282
! 		    {
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   283
! 		      pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   284
! 		      bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   285
! 		    }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   286
  		  in_equiv = 1;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   287
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   288
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   289
*** 302,310 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   290
--- 342,354 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   291
  		{
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   292
  		  pat++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   293
+ 		  bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   294
  		  in_equiv = 0;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   295
  		}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   296
+ 	      else
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   297
+ 		bracklen++;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   298
  	    }
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   299
  	  while ((c = *pat++) != ']');
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   300
  	  matlen++;		/* bracket expression can only match one char */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   301
+ bad_bracket:
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   302
  	  break;
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   303
  	}
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   304
*** ../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
   305
--- 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
   306
***************
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   307
*** 26,30 ****
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   308
     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
   309
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   310
! #define PATCHLEVEL 2
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   311
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   312
  #endif /* _PATCHLEVEL_H_ */
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   313
--- 26,30 ----
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   314
     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
   315
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   316
! #define PATCHLEVEL 3
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   317
  
6d49548fa9da 15754923 SUNBT7111705 Upgrade bash to 4.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   318
  #endif /* _PATCHLEVEL_H_ */