[PATCH] shell portability: Use sed instead of non-portable variable expansion
- From
- Naohiro Aota <naota@elisp.net>
- Date
- Sep 5, 2011, 05:11 UTC
- Message-ID
- <8762l73758.fsf@elisp.net>
Variable expansions like "${foo#bar}" or "${foo%bar}" doesn't work on shells like FreeBSD sh and they made the test to fail. This patch replace such variable expansions with sed.
Signed-off-by: Naohiro Aota <naota@elisp.net> ---
Testing on FreeBSD failed because of this "bash-ism". After applying this patch, I've verified the test to pass on FreeBSD. (and it worked well also with GNU sed)
t/t5560-http-backend-noserver.sh | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/t/t5560-http-backend-noserver.sh b/t/t5560-http-backend-noserver.sh index 0ad7ce0..c8237ef 100755 --- a/t/t5560-http-backend-noserver.sh +++ b/t/t5560-http-backend-noserver.sh @@ -9,8 +9,8 @@ test_have_prereq MINGW && export GREP_OPTIONS=-U run_backend() { echo "$2" | - QUERY_STRING="${1#*\?}" \ - PATH_TRANSLATED="$HTTPD_DOCUMENT_ROOT_PATH/${1%%\?*}" \ + QUERY_STRING=$(echo "$1"|sed -e 's/^[^?]*?\(.*\)$/\1/') \ + PATH_TRANSLATED="$HTTPD_DOCUMENT_ROOT_PATH/$(echo "$1"|sed -e 's/^\([^?]*\)?.*$/\1/')" \ git http-backend >act.out 2>act.err }
-- 1.7.6