From: Brandon Casey Date: Thu, 26 May 2011 20:52:04 +0000 (-0700) Subject: git-submodule.sh: separate parens by a space to avoid confusing some shells X-Git-Tag: v1.7.5.4~15^2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=f5799e05c0e7fbee32ca32995c7c4a627eeff469;p=git.git 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 b010a6730..4361ae418 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