Code

parse-remote::expand_refs_wildcard()
authorJunio C Hamano <junkio@cox.net>
Mon, 18 Dec 2006 20:13:46 +0000 (12:13 -0800)
committerJunio C Hamano <junkio@cox.net>
Mon, 18 Dec 2006 20:13:46 +0000 (12:13 -0800)
Work around dash incompatibility by not using "${name%'^{}'}".

Noticed by Jeff King; dash seems to mistake the closing brace
inside the single quote as the terminating brace for parameter
expansion.

Signed-off-by: Junio C Hamano <junkio@cox.net>
git-parse-remote.sh

index 6ae534bf89a7a1fd0bfeee4248c37b4ea71290b9..bc881cc5f9d932c40f10bf0448aafa3263724c35 100755 (executable)
@@ -111,16 +111,14 @@ expand_refs_wildcard () {
                local_force=
                test "z$lref" = "z$ref" || local_force='+'
                echo "$ls_remote_result" |
+               sed -e '/\^{}$/d' |
                (
                        IFS='   '
                        while read sha1 name
                        do
+                               # ignore the ones that do not start with $from
                                mapped=${name#"$from"}
-                               if test "z$name" != "z${name%'^{}'}" ||
-                                       test "z$name" = "z$mapped"
-                               then
-                                       continue
-                               fi
+                               test "z$name" = "z$mapped" && continue
                                echo "${local_force}${name}:${to}${mapped}"
                        done
                )