diff options
Diffstat (limited to 'keyserver/internal/device_list_update.go')
-rw-r--r-- | keyserver/internal/device_list_update.go | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/keyserver/internal/device_list_update.go b/keyserver/internal/device_list_update.go index 573285e8..c27e291f 100644 --- a/keyserver/internal/device_list_update.go +++ b/keyserver/internal/device_list_update.go @@ -342,10 +342,12 @@ func (u *DeviceListUpdater) processServer(serverName gomatrixserverlib.ServerNam if err != nil { logger.WithError(err).WithField("user_id", userID).Error("fetched device list but failed to store/emit it") hasFailures = true - } else { - u.clearChannel(userID) } } + for _, userID := range userIDs { + // always clear the channel to unblock Update calls regardless of success/failure + u.clearChannel(userID) + } return hasFailures } |