diff options
author | Dmitry Kurochkin <dmitry.kurochkin@gmail.com> | 2011-11-17 17:05:55 +0400 |
---|---|---|
committer | David Bremner <bremner@debian.org> | 2011-11-27 08:13:07 -0800 |
commit | 9d5b521472d1ac401ca2667d1261b641bef208cb (patch) | |
tree | d44f0efd6912e578f7802c7c6088574efefb94b2 | |
parent | 1660ca5e619a02f430211ac0b26cfdc1ec23a717 (diff) |
test: set EMACS_SERVER variable only after dtach(1) was successfully started
Otherwise, we can set the EMACS_SERVER and return with an error. And
subsequent calls to test_emacs would assume that emacs server is running.
-rw-r--r-- | test/test-lib.sh | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/test/test-lib.sh b/test/test-lib.sh index 0735b5c9..20fa195e 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -845,16 +845,17 @@ EOF test_emacs () { if [ -z "$EMACS_SERVER" ]; then - EMACS_SERVER="notmuch-test-suite-$$" + server_name="notmuch-test-suite-$$" # start a detached session with an emacs server # user's TERM is given to dtach which assumes a minimally # VT100-compatible terminal -- and emacs inherits that TERM=$ORIGINAL_TERM dtach -n "$TEST_TMPDIR/emacs-dtach-socket.$$" \ sh -c "stty rows 24 cols 80; exec '$TMP_DIRECTORY/run_emacs' \ --no-window-system \ - --eval '(setq server-name \"$EMACS_SERVER\")' \ + --eval '(setq server-name \"$server_name\")' \ --eval '(server-start)' \ --eval '(orphan-watchdog $$)'" || return + EMACS_SERVER="$server_name" # wait until the emacs server is up until test_emacs '()' 2>/dev/null; do sleep 1 |