From c8a993834e8b243f53d716e6c9238cbc55f422ba Mon Sep 17 00:00:00 2001 From: Sergei Maklagin Date: Sun, 22 Feb 2026 15:45:53 +0300 Subject: [PATCH] Fix Range --- common/xray/json/badoption/range.go | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/common/xray/json/badoption/range.go b/common/xray/json/badoption/range.go index cef20315..fa32215b 100644 --- a/common/xray/json/badoption/range.go +++ b/common/xray/json/badoption/range.go @@ -20,6 +20,9 @@ func (c *Range) Build() *Range { } func (c *Range) MarshalJSON() ([]byte, error) { + if c.From == c.To { + return json.Marshal(c.From) + } return json.Marshal(fmt.Sprintf("%d-%d", c.From, c.To)) } @@ -50,9 +53,15 @@ func (c *Range) UnmarshalJSON(content []byte) error { rangeValue.From, rangeValue.To = int32(from), int32(to) } } else { - err := json.Unmarshal(content, &rangeValue) - if err != nil { - return err + var int32Value int32 + err := json.Unmarshal(content, &int32Value) + if err == nil { + rangeValue.From, rangeValue.To = int32Value, int32Value + } else { + err := json.Unmarshal(content, &rangeValue) + if err != nil { + return err + } } } if rangeValue.From > rangeValue.To {