start-ssh-agent: Fix bashism.
authorMark Wooding <mdw@distorted.org.uk>
Fri, 12 Dec 2008 16:48:46 +0000 (16:48 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 12 Dec 2008 16:48:46 +0000 (16:48 +0000)
A sequence of assignments like

  foo=mumble bar=$foo/twonk

in bash is expanded from left-to-right, so bar is assigned the value
mumble/twonk.  Unfortunately, some shells don't process assignments
left-to-right in this way, and bar ends up as just /twonk.

Insert semicolons to force sequencing.

start-ssh-agent

index 3515579..542abcd 100755 (executable)
@@ -36,7 +36,7 @@ case "$force,$SSH_AUTH_SOCK" in
     ;;
   *)
     start=
-    set +e; ssh-add -l >/dev/null 2>&1; rc=$?; set -e    
+    set +e; ssh-add -l >/dev/null 2>&1; rc=$?; set -e
     [ $rc -ge 2 ] && start=t
     ;;
 esac
@@ -45,10 +45,10 @@ esac
 if [ "$start" ]; then
   hostname=${HOST-$(hostname)}
   user=${USER-${LOGNAME-$(whoami)}}
-  dir=$TMPDIR/.ssh-agent.$hostname.$user socket=$dir/sock pid=$dir/pid
+  dir=$TMPDIR/.ssh-agent.$hostname.$user; socket=$dir/sock; pid=$dir/pid
   mkdir -p -m700 "$dir"
   SSH_AUTH_SOCK=$socket; export SSH_AUTH_SOCK
-  set +e; ssh-add -l >/dev/null 2>&1; rc=$?; set -e    
+  set +e; ssh-add -l >/dev/null 2>&1; rc=$?; set -e
   if [ $rc -ge 2 ]; then
     if [ -f "$pid" ]; then
       kill $(cat "$pid") >/dev/null 2>&1 || :