Merge branch 'js/daemon-test-race-fix'
authorJunio C Hamano <gitster@pobox.com>
Mon, 30 Apr 2012 00:52:02 +0000 (17:52 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 30 Apr 2012 00:52:03 +0000 (17:52 -0700)
The shell construct to launch git-daemon and wait for it to start
serving during the test was faulty, and this fixes it.

By Johannes Sixt
* js/daemon-test-race-fix:
t5570: fix forwarding of git-daemon messages via cat

t/lib-git-daemon.sh
index ef2d01f36939199f9720faad06d2b3a01c7cd7f5..87f0ad8f4182b13903b9649308e36e34a6122494 100644 (file)
@@ -31,19 +31,19 @@ start_git_daemon() {
                >&3 2>git_daemon_output &
        GIT_DAEMON_PID=$!
        {
-               read line
+               read line <&7
                echo >&4 "$line"
-               cat >&4 &
+               cat <&7 >&4 &
+       } 7<git_daemon_output &&
 
-               # Check expected output
-               if test x"$(expr "$line" : "\[[0-9]*\] \(.*\)")" != x"Ready to rumble"
-               then
-                       kill "$GIT_DAEMON_PID"
-                       wait "$GIT_DAEMON_PID"
-                       trap 'die' EXIT
-                       error "git daemon failed to start"
-               fi
-       } <git_daemon_output
+       # Check expected output
+       if test x"$(expr "$line" : "\[[0-9]*\] \(.*\)")" != x"Ready to rumble"
+       then
+               kill "$GIT_DAEMON_PID"
+               wait "$GIT_DAEMON_PID"
+               trap 'die' EXIT
+               error "git daemon failed to start"
+       fi
 }
 
 stop_git_daemon() {