v2ray 10 years ago
parent
commit
32c3565681
1 changed files with 8 additions and 3 deletions
  1. 8 3
      proxy/vmess/config/json/outbound.go

+ 8 - 3
proxy/vmess/config/json/outbound.go

@@ -44,15 +44,20 @@ type Outbound struct {
 	TargetList []*ConfigTarget `json:"vnext"`
 	TargetList []*ConfigTarget `json:"vnext"`
 }
 }
 
 
-func (this *Outbound) UnmarshallJSON(data []byte) error {
-	err := json.Unmarshal(data, this)
+func (this *Outbound) UnmarshalJSON(data []byte) error {
+	type RawOutbound struct {
+		TargetList []*ConfigTarget `json:"vnext"`
+	}
+	rawOutbound := &RawOutbound{}
+	err := json.Unmarshal(data, rawOutbound)
 	if err != nil {
 	if err != nil {
 		return err
 		return err
 	}
 	}
-	if len(this.TargetList) == 0 {
+	if len(rawOutbound.TargetList) == 0 {
 		log.Error("0 VMess receiver configured.")
 		log.Error("0 VMess receiver configured.")
 		return proxyconfig.BadConfiguration
 		return proxyconfig.BadConfiguration
 	}
 	}
+	this.TargetList = rawOutbound.TargetList
 	return nil
 	return nil
 }
 }