diff --git a/bzip2-1.0.6-bzgrep_return_value.patch b/bzip2-1.0.6-bzgrep_return_value.patch new file mode 100644 index 0000000..1227517 --- /dev/null +++ b/bzip2-1.0.6-bzgrep_return_value.patch @@ -0,0 +1,27 @@ +Index: bzip2-1.0.6/bzgrep +=================================================================== +--- bzip2-1.0.6.orig/bzgrep ++++ bzip2-1.0.6/bzgrep +@@ -65,8 +65,20 @@ for i do + else + j=$(echo "$i" | sed 's/\\/&&/g;s/|/\\&/g;s/&/\\&/g') + j=`printf "%s" "$j" | tr '\n' ' '` +- bzip2 -cdfq "$i" | $grep $opt "$pat" | sed "s|^|${j}:|" +- r=$? ++ # A trick adapted from ++ # https://groups.google.com/forum/#!original/comp.unix.shell/x1345iu10eg/Nn1n-1r1uU0J ++ # that has the same effect as the following bash code: ++ # bzip2 -cdfq "$i" | $grep $opt "$pat" | sed "s|^|${j}:|" ++ # r=${PIPESTATUS[1]} ++ exec 3>&1 ++ eval ` ++ exec 4>&1 >&3 3>&- ++ { ++ bzip2 -cdfq "$i" 4>&- ++ } | { ++ $grep $opt "$pat" 4>&-; echo "r=$?;" >&4 ++ } | sed "s|^|${j}:|" ++ ` + fi + test "$r" -ne 0 && res="$r" + done diff --git a/bzip2.changes b/bzip2.changes index 8fce4d8..374dda7 100644 --- a/bzip2.changes +++ b/bzip2.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Thu Mar 24 15:44:52 UTC 2016 - kstreitova@suse.com + +- add bzip2-1.0.6-bzgrep_return_value.patch to fix bzgrep wrapper + that always returns 0 as an exit code when grepping multiple + archives [bsc#970260] + ------------------------------------------------------------------- Wed Jan 13 08:12:20 UTC 2016 - idonmez@suse.com diff --git a/bzip2.spec b/bzip2.spec index 750775b..fa80637 100644 --- a/bzip2.spec +++ b/bzip2.spec @@ -35,6 +35,8 @@ Patch1: bzip2-1.0.6-fix-bashisms.patch Patch2: bzip2-unsafe_strcpy.patch Patch3: bzip2-point-to-doc-pkg.patch Patch4: bzip2-ocloexec.patch +# PATCH-FIX-UPSTREAM bnc#970260 kstreitova@suse.comĀ -- fix a wrong exit code when grepping multiple archives +Patch5: bzip2-1.0.6-bzgrep_return_value.patch BuildRequires: autoconf >= 2.57 BuildRequires: libtool BuildRequires: pkg-config @@ -80,6 +82,7 @@ The bzip2 runtime library development files. %patch2 %patch3 -p1 %patch4 +%patch5 -p1 autoreconf -fiv %build