bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bash-4.4 Official Patch 2


From: Chet Ramey
Subject: Bash-4.4 Official Patch 2
Date: Mon, 14 Nov 2016 13:53:35 -0500

                             BASH PATCH REPORT
                             =================

Bash-Release:   4.4
Patch-ID:       bash44-002

Bug-Reported-by:        Eric Pruitt <eric.pruitt@gmail.com>
Bug-Reference-ID:       <20160916055120.GA28272@sinister.codevat.com>
Bug-Reference-URL:      
http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00015.html

Bug-Description:

Bash-4.4 warns when discarding NUL bytes in command substitution output
instead of silently dropping them.  This patch changes the warnings from
one per NUL byte encountered to one warning per command substitution.

Patch (apply with `patch -p0'):

*** ../bash-4.4/subst.c 2016-08-30 16:46:38.000000000 -0400
--- subst.c     2016-09-26 10:20:19.000000000 -0400
***************
*** 5932,5935 ****
--- 5933,5937 ----
    int istring_index, istring_size, c, tflag, skip_ctlesc, skip_ctlnul;
    ssize_t bufn;
+   int nullbyte;
  
    istring = (char *)NULL;
***************
*** 5939,5942 ****
--- 5941,5946 ----
      skip_ctlesc |= *s == CTLESC, skip_ctlnul |= *s == CTLNUL;
  
+   nullbyte = 0;
+ 
    /* Read the output of the command through the pipe.  This may need to be
       changed to understand multibyte characters in the future. */
***************
*** 5957,5961 ****
        {
  #if 1
!         internal_warning ("%s", _("command substitution: ignored null byte in 
input"));
  #endif
          continue;
--- 5961,5969 ----
        {
  #if 1
!         if (nullbyte == 0)
!           {
!             internal_warning ("%s", _("command substitution: ignored null 
byte in input"));
!             nullbyte = 1;
!           }
  #endif
          continue;
*** ../bash-4.4/patchlevel.h    2016-06-22 14:51:03.000000000 -0400
--- patchlevel.h        2016-10-01 11:01:28.000000000 -0400
***************
*** 26,30 ****
     looks for to find the patch level (for the sccs version string). */
  
! #define PATCHLEVEL 1
  
  #endif /* _PATCHLEVEL_H_ */
--- 26,30 ----
     looks for to find the patch level (for the sccs version string). */
  
! #define PATCHLEVEL 2
  
  #endif /* _PATCHLEVEL_H_ */

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    chet@case.edu    http://cnswww.cns.cwru.edu/~chet/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]