From e3c52e86868c88e613eefbb95172a1e38abf0059 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Thu, 18 Mar 2021 17:47:02 +0100 Subject: [PATCH] fixed syntax error testcase: a=b which ls --- which.spec | 5 ++++- which2.sh | 18 +++++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/which.spec b/which.spec index 5b780cc..222a377 100644 --- a/which.spec +++ b/which.spec @@ -1,7 +1,7 @@ Summary: Displays where a particular program in your path is located Name: which Version: 2.21 -Release: 21%{?dist} +Release: 22%{?dist} License: GPLv3 Source0: http://ftp.gnu.org/gnu/which/%{name}-%{version}.tar.gz Source1: which2.sh @@ -40,6 +40,9 @@ rm -f $RPM_BUILD_ROOT%{_infodir}/dir %{_mandir}/man1/which.1* %changelog +* Thu Mar 18 2021 Than Ngo - 2.21-22 +- fixed syntax error testcase: a=b which ls + * Wed Jan 27 2021 Fedora Release Engineering - 2.21-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/which2.sh b/which2.sh index 53458f3..f73023f 100644 --- a/which2.sh +++ b/which2.sh @@ -1,7 +1,11 @@ -# Initialization script for bash and sh - -if [ "$0" = "ksh" -o "$0" = "-ksh" -o "$0" = "mksh" -o "$0" = "-mksh" ] ; then - alias which='(alias; typeset -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot' -else - alias which='(alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot' -fi +# Initialization script for bash, sh, mksh and ksh +which () +{ + if [ "$0" = "ksh" -o "$0" = "-ksh" -o "$0" = "mksh" -o "$0" = "-mksh" ] ; then + (alias; typeset -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@ + export which + else + (alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@ + export -f which + fi +}