From f5799e05c0e7fbee32ca32995c7c4a627eeff469 Mon Sep 17 00:00:00 2001 From: Brandon Casey Date: Thu, 26 May 2011 13:52:04 -0700 Subject: git-submodule.sh: separate parens by a space to avoid confusing some shells Some shells interpret '(( ))' according to the rules for arithmetic expansion. This may not follow POSIX, but is prevalent in commonly used shells. Bash does not have a problem with this particular instance of '((', likely because it is not followed by a '))', but the public domain ksh does, and so does ksh on IRIX 6.5. So, add a space between the parenthesis to avoid confusing these shells. Signed-off-by: Brandon Casey Signed-off-by: Junio C Hamano diff --git a/git-submodule.sh b/git-submodule.sh index b010a67..4361ae4 100755 --- a/git-submodule.sh +++ b/git-submodule.sh @@ -491,7 +491,7 @@ cmd_update() # Run fetch only if $sha1 isn't present or it # is not reachable from a ref. (clear_local_git_env; cd "$path" && - ((rev=$(git rev-list -n 1 $sha1 --not --all 2>/dev/null) && + ( (rev=$(git rev-list -n 1 $sha1 --not --all 2>/dev/null) && test -z "$rev") || git-fetch)) || die "Unable to fetch in submodule path '$path'" fi -- cgit v0.10.2-6-g49f6