From bb79f554dd7caf2c143f09d79e92e11af7d1bda0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 26 Apr 2026 20:48:03 +0000 Subject: [PATCH] fix: tighten browser URL collection order and error handling Agent-Logs-Url: https://github.com/XTLS/Xray-core/sessions/84d72770-6ad0-447a-8d86-94d692972a05 Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com> --- infra/conf/transport_internet.go | 4 +++- transport/internet/browser_dialer/dialer.go | 7 ++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/infra/conf/transport_internet.go b/infra/conf/transport_internet.go index 3c3e10a2..c7009f6b 100644 --- a/infra/conf/transport_internet.go +++ b/infra/conf/transport_internet.go @@ -1995,7 +1995,9 @@ func (c *StreamConfig) Build() (*internet.StreamConfig, error) { } } } - browser_dialer.RegisterDialerProxyURL(c.SocketSettings.DialerProxy) + if err := browser_dialer.RegisterDialerProxyURL(c.SocketSettings.DialerProxy); err != nil { + return nil, errors.New("failed to collect browser dialer url.").Base(err) + } } } diff --git a/transport/internet/browser_dialer/dialer.go b/transport/internet/browser_dialer/dialer.go index 27d5f86d..a8cef9ee 100644 --- a/transport/internet/browser_dialer/dialer.go +++ b/transport/internet/browser_dialer/dialer.go @@ -75,16 +75,17 @@ func BeginCollectingDialerProxyURLs() error { return nil } -func RegisterDialerProxyURL(raw string) { +func RegisterDialerProxyURL(raw string) error { if !IsBrowserDialerProxy(raw) { - return + return nil } initMu.Lock() defer initMu.Unlock() if pendingURLs == nil { - pendingURLs = map[string]struct{}{} + return errors.New("browser dialer url collection is not initialized") } pendingURLs[raw] = struct{}{} + return nil } func ConfigureCollectedDialerProxyURLs() error {