components/bash/patches/bash42-046.patch
author Stefan Teleman <stefan.teleman@oracle.com>
Wed, 24 Sep 2014 13:11:40 -0700
changeset 2111 4988638320c4
permissions -rw-r--r--
19678459 problem in UTILITY/BASH
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2111
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     1
			     BASH PATCH REPORT
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     2
			     =================
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     3
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     4
Bash-Release:	4.2
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     5
Patch-ID:	bash42-046
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     6
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     7
Bug-Reported-by:	"Theodoros V. Kalamatianos" <[email protected]>
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     8
Bug-Reference-ID:	<[email protected]>
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     9
Bug-Reference-URL:	http://lists.gnu.org/archive/html/bug-bash/2014-01/msg00044.html
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    10
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    11
Bug-Description:
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    12
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    13
Bash-4.2 patch 32 introduced a problem with "$@" and arrays expanding empty
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    14
positional parameters or array elements when using substring expansion,
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    15
pattern substitution, or case modfication.  The empty parameters or array
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    16
elements are removed instead of expanding to empty strings ("").
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    17
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    18
Patch (apply with `patch -p0'):
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    19
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    20
*** ../bash-4.2-patched/subst.c	2012-12-31 11:52:56.000000000 -0500
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    21
--- subst.c	2014-03-31 14:19:56.000000000 -0400
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    22
***************
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    23
*** 7243,7247 ****
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    24
        ret = alloc_word_desc ();
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    25
        ret->word = temp1;
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    26
!       if (temp1 && QUOTED_NULL (temp1) && (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)))
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    27
  	ret->flags |= W_QUOTED|W_HASQUOTEDNULL;
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    28
        return ret;
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    29
--- 7243,7253 ----
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    30
        ret = alloc_word_desc ();
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    31
        ret->word = temp1;
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    32
!       /* We test quoted_dollar_atp because we want variants with double-quoted
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    33
! 	 "$@" to take a different code path. In fact, we make sure at the end
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    34
! 	 of expand_word_internal that we're only looking at these flags if
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    35
! 	 quoted_dollar_at == 0. */
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    36
!       if (temp1 && 
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    37
!           (quoted_dollar_atp == 0 || *quoted_dollar_atp == 0) &&
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    38
! 	  QUOTED_NULL (temp1) && (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)))
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    39
  	ret->flags |= W_QUOTED|W_HASQUOTEDNULL;
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    40
        return ret;
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    41
*** ../bash-4.2-patched/patchlevel.h	Sat Jun 12 20:14:48 2010
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    42
--- patchlevel.h	Thu Feb 24 21:41:34 2011
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    43
***************
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    44
*** 26,30 ****
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    45
     looks for to find the patch level (for the sccs version string). */
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    46
  
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    47
! #define PATCHLEVEL 45
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    48
  
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    49
  #endif /* _PATCHLEVEL_H_ */
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    50
--- 26,30 ----
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    51
     looks for to find the patch level (for the sccs version string). */
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    52
  
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    53
! #define PATCHLEVEL 46
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    54
  
4988638320c4 19678459 problem in UTILITY/BASH
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    55
  #endif /* _PATCHLEVEL_H_ */