+7
-1
@@ -415,7 +415,13 @@ func (s *service) Serve(ctx context.Context) error {
|
|||||||
// Restart due to listen/serve failure
|
// Restart due to listen/serve failure
|
||||||
l.Warnln("GUI/API:", err, "(restarting)")
|
l.Warnln("GUI/API:", err, "(restarting)")
|
||||||
}
|
}
|
||||||
srv.Close()
|
// Give it a moment to shut down gracefully, e.g. if we are restarting
|
||||||
|
// due to a config change through the API, let that finish successfully.
|
||||||
|
timeout, cancel := context.WithTimeout(context.Background(), 100*time.Millisecond)
|
||||||
|
defer cancel()
|
||||||
|
if err := srv.Shutdown(timeout); err == timeout.Err() {
|
||||||
|
srv.Close()
|
||||||
|
}
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user