From c0412596396f59d1b3c3bcd9360b389f81d115d1 Mon Sep 17 00:00:00 2001 From: junjiefly <107779959+junjiefly@users.noreply.github.com> Date: Sun, 10 Dec 2023 16:36:11 +0800 Subject: [PATCH] Update swift.go targetUrlOut may be null if targetUrlIn is null in high concurrency situations, and that will get a invalid http url --- swift.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/swift.go b/swift.go index cb2b8b1e8..7ad2d5e72 100644 --- a/swift.go +++ b/swift.go @@ -556,10 +556,12 @@ func (c *Connection) getUrlAndAuthToken(ctx context.Context, targetUrlIn string, c.authLock.Lock() defer c.authLock.Unlock() targetUrlOut = targetUrlIn - if !c.authenticated() { - err = c.authenticate(ctx) - if err != nil { - return + if !c.authenticated() || targetUrlIn == ""{ + if !c.authenticated() { + err = c.authenticate(ctx) + if err != nil { + return + } } if OnReAuth != nil { targetUrlOut, err = OnReAuth()