diff options
author | Jakob Borg <jakob@kastelo.net> | 2023-12-11 08:02:25 +0100 |
---|---|---|
committer | Jakob Borg <jakob@kastelo.net> | 2023-12-11 08:04:47 +0100 |
commit | 30fe2cf514d982c8bef75ff99d7b5d5928998900 (patch) | |
tree | 4b3997100dd104d56487ea7282fbc4f540ac8c50 | |
parent | d0e407f3c3d4a991dbbd2b0377da088aceb6b861 (diff) | |
download | syncthing-30fe2cf514d982c8bef75ff99d7b5d5928998900.tar.gz syncthing-30fe2cf514d982c8bef75ff99d7b5d5928998900.zip |
lib/model: Add pmut locking for DeviceStatistics (fixes #9274)
Looking at deviceConnIDs requires this. Added in #9256.
-rw-r--r-- | lib/model/model.go | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/model/model.go b/lib/model/model.go index 878ef9d73..bd87968d9 100644 --- a/lib/model/model.go +++ b/lib/model/model.go @@ -812,6 +812,8 @@ func (m *model) ConnectionStats() map[string]interface{} { func (m *model) DeviceStatistics() (map[protocol.DeviceID]stats.DeviceStatistics, error) { m.fmut.RLock() defer m.fmut.RUnlock() + m.pmut.RLock() + defer m.pmut.RUnlock() res := make(map[protocol.DeviceID]stats.DeviceStatistics, len(m.deviceStatRefs)) for id, sr := range m.deviceStatRefs { stats, err := sr.GetStatistics() |