Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Jan 2017 10:28:24 +0000 (UTC)
From:      Dmitry Marakasov <amdmi3@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r312061 - stable/10/contrib/bzip2
Message-ID:  <201701131028.v0DASOp8098703@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: amdmi3 (ports committer)
Date: Fri Jan 13 10:28:24 2017
New Revision: 312061
URL: https://svnweb.freebsd.org/changeset/base/312061

Log:
  MFC r310718:
  
  bzip2 does not exit after showing license as requested with --version
  or --license as most apps would do, instead it waits for data to
  compress on stdin. Because of that, if `bzip2 --version' is called,
  bogus `bzip2: I won't write compressed data to a terminal' error
  message will be displayed, and checking for bzip2 version in scripts
  as in
  
      bzip2 --version 2>&1 | grep -o "Version [^,]*"
  
  will hand as bzip2 would wait for data to compress on stdin. Fix
  this by exiting right after showing version/license text.
  
  I've tried to push this upstream for more than a year, but author
  is unresponsive, so upstream may be considered dead.
  
  Ubuntu applies similar fix, for the note.
  
  PR:		199443
  Approved by:	dim, bapt
  Differential Revision:	D8924

Modified:
  stable/10/contrib/bzip2/bzip2.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/contrib/bzip2/bzip2.c
==============================================================================
--- stable/10/contrib/bzip2/bzip2.c	Fri Jan 13 09:32:11 2017	(r312060)
+++ stable/10/contrib/bzip2/bzip2.c	Fri Jan 13 10:28:24 2017	(r312061)
@@ -1890,7 +1890,9 @@ IntNative main ( IntNative argc, Char *a
                case '8': blockSize100k    = 8; break;
                case '9': blockSize100k    = 9; break;
                case 'V':
-               case 'L': license();            break;
+               case 'L': license();
+                         exit ( 0 );
+                         break;
                case 'v': verbosity++; break;
                case 'h': usage ( progName );
                          exit ( 0 );
@@ -1916,8 +1918,8 @@ IntNative main ( IntNative argc, Char *a
       if (ISFLAG("--keep"))              keepInputFiles   = True;    else
       if (ISFLAG("--small"))             smallMode        = True;    else
       if (ISFLAG("--quiet"))             noisy            = False;   else
-      if (ISFLAG("--version"))           license();                  else
-      if (ISFLAG("--license"))           license();                  else
+      if (ISFLAG("--version"))           { license(); exit ( 0 ); }  else
+      if (ISFLAG("--license"))           { license(); exit ( 0 ); }  else
       if (ISFLAG("--exponential"))       workFactor = 1;             else 
       if (ISFLAG("--repetitive-best"))   redundant(aa->name);        else
       if (ISFLAG("--repetitive-fast"))   redundant(aa->name);        else



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201701131028.v0DASOp8098703>