瀏覽代碼

fix: handle Init error in GetXrayTraffic to prevent nil pointer panic

#3969
MHSanaei 1 天之前
父節點
當前提交
b56db67759
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      web/service/xray.go

+ 4 - 1
web/service/xray.go

@@ -206,7 +206,10 @@ func (s *XrayService) GetXrayTraffic() ([]*xray.Traffic, []*xray.ClientTraffic,
 		return nil, nil, err
 	}
 	apiPort := p.GetAPIPort()
-	s.xrayAPI.Init(apiPort)
+	if err := s.xrayAPI.Init(apiPort); err != nil {
+		logger.Debug("Failed to initialize Xray API:", err)
+		return nil, nil, err
+	}
 	defer s.xrayAPI.Close()
 
 	traffic, clientTraffic, err := s.xrayAPI.GetTraffic(true)