From 28ceb323ee7acf023b3cd15922ba37b1dffc331f Mon Sep 17 00:00:00 2001 From: Roberto Ricci Date: Fri, 18 Aug 2023 16:33:10 +0200 Subject: [PATCH] sftp: use atomic types --- backend/sftp/sftp.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/backend/sftp/sftp.go b/backend/sftp/sftp.go index b402ca713..5b213bf55 100644 --- a/backend/sftp/sftp.go +++ b/backend/sftp/sftp.go @@ -503,7 +503,7 @@ type Fs struct { drain *time.Timer // used to drain the pool when we stop using the connections pacer *fs.Pacer // pacer for operations savedpswd string - sessions int32 // count in use sessions + sessions atomic.Int32 // count in use sessions } // Object is a remote SFTP file that has been stat'd (so it exists, but is not necessarily open for reading) @@ -571,17 +571,17 @@ func (c *conn) closed() error { // // Call removeSession() when done func (f *Fs) addSession() { - atomic.AddInt32(&f.sessions, 1) + f.sessions.Add(1) } // Show the ssh session is no longer in use func (f *Fs) removeSession() { - atomic.AddInt32(&f.sessions, -1) + f.sessions.Add(-1) } // getSessions shows whether there are any sessions in use func (f *Fs) getSessions() int32 { - return atomic.LoadInt32(&f.sessions) + return f.sessions.Load() } // Open a new connection to the SFTP server.