Fix clash server early close

This commit is contained in:
世界 2022-08-22 16:33:33 +08:00
parent 4216afe62f
commit 6253e2e24c
No known key found for this signature in database
GPG Key ID: CD109927C34A63C4

View File

@ -25,6 +25,7 @@ import (
"github.com/go-chi/cors"
"github.com/go-chi/render"
"github.com/gorilla/websocket"
"github.com/sagernet/sing/common"
)
var _ adapter.ClashServer = (*Server)(nil)
@ -103,10 +104,11 @@ func (s *Server) Start() error {
}
func (s *Server) Close() error {
s.httpServer.Close()
s.tcpListener.Close()
s.trafficManager.Close()
return nil
return common.Close(
common.PtrOrNil(s.httpServer),
s.tcpListener,
s.trafficManager,
)
}
func (s *Server) RoutedConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext, matchedRule adapter.Rule) (net.Conn, adapter.Tracker) {