Pārlūkot izejas kodu

Fix: check jsonConfig.KcpConfig

Shelikhoo 9 gadi atpakaļ
vecāks
revīzija
de4b4516ee
1 mainītis faili ar 10 papildinājumiem un 3 dzēšanām
  1. 10 3
      transport/config_json.go

+ 10 - 3
transport/config_json.go

@@ -5,6 +5,7 @@ package transport
 import (
 	"encoding/json"
 
+	"github.com/v2ray/v2ray-core/common/log"
 	"github.com/v2ray/v2ray-core/transport/hub/kcpv"
 )
 
@@ -23,9 +24,15 @@ func (this *Config) UnmarshalJSON(data []byte) error {
 	}
 	this.ConnectionReuse = jsonConfig.ConnectionReuse
 	this.enableKcp = jsonConfig.EnableKcp
-	this.kcpConfig = jsonConfig.KcpConfig
-	if jsonConfig.KcpConfig.AdvancedConfigs == nil {
-		jsonConfig.KcpConfig.AdvancedConfigs = kcpv.DefaultAdvancedConfigs
+	if jsonConfig.KcpConfig != nil {
+		this.kcpConfig = jsonConfig.KcpConfig
+		if jsonConfig.KcpConfig.AdvancedConfigs == nil {
+			jsonConfig.KcpConfig.AdvancedConfigs = kcpv.DefaultAdvancedConfigs
+		}
+	} else {
+		if jsonConfig.EnableKcp {
+			log.Error("transport: You have enabled KCP but no configure is given")
+		}
 	}
 
 	return nil