Browse Source

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

#3969
MHSanaei 1 ngày trước cách đây
mục cha
commit
b56db67759
1 tập tin đã thay đổi với 4 bổ sung1 xóa
  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)