make git_clone safer

the ensures that if the function returns early, we return to a
sane directory, and not hang out somewhere that a future git
call might modify a directory in a weird way. This is especially
important in the case of stable branches where were are hopping
between stable for servers and master for clients.

Change-Id: Ib8ebbc23b1813bc1bfb31d0a079f1b882135bd39
diff --git a/functions-common b/functions-common
index 90cd3df..c6fd5c7 100644
--- a/functions-common
+++ b/functions-common
@@ -517,12 +517,14 @@
     GIT_DEST=$2
     GIT_REF=$3
     RECLONE=$(trueorfalse False $RECLONE)
+    local orig_dir=`pwd`
 
     if [[ "$OFFLINE" = "True" ]]; then
         echo "Running in offline mode, clones already exist"
         # print out the results so we know what change was used in the logs
         cd $GIT_DEST
         git show --oneline | head -1
+        cd $orig_dir
         return
     fi
 
@@ -572,6 +574,7 @@
     # print out the results so we know what change was used in the logs
     cd $GIT_DEST
     git show --oneline | head -1
+    cd $orig_dir
 }
 
 # git can sometimes get itself infinitely stuck with transient network