diff --git a/backend.go b/backend.go index 95b1255..81c67a8 100644 --- a/backend.go +++ b/backend.go @@ -124,7 +124,9 @@ func runBackendServer() { if err != nil { elog.Panicf("can't exec backend: %s", err) } - proc.Wait() - elog.Printf("lost the backend: %s", err) - w.Close() + go func() { + proc.Wait() + elog.Printf("lost the backend: %s", err) + w.Close() + }() } diff --git a/web.go b/web.go index be74cd9..59070ad 100644 --- a/web.go +++ b/web.go @@ -2420,15 +2420,6 @@ func enditall() { var preservehooks []func() -func wait100ms() chan struct{} { - c := make(chan struct{}) - go func() { - time.Sleep(100 * time.Millisecond) - close(c) - }() - return c -} - func bgmonitor() { for { time.Sleep(50 * time.Minute) @@ -2443,13 +2434,12 @@ func serve() { if err != nil { elog.Fatal(err) } - go runBackendServer() + runBackendServer() go enditall() go redeliverator() go tracker() go bgmonitor() loadLingo() - w100 := wait100ms() readviews = templates.Load(develMode, viewDir+"/views/honkpage.html", @@ -2482,7 +2472,6 @@ func serve() { } loadAvatarColors() } - <-w100 for _, h := range preservehooks { h()