diff options
author | David Baker <dave@matrix.org> | 2016-03-11 13:14:18 +0000 |
---|---|---|
committer | David Baker <dave@matrix.org> | 2016-03-11 13:14:18 +0000 |
commit | aa11db5f119b9fa88242b0df95cfddd00e196ca1 (patch) | |
tree | ebf68ea7e6d5b084ba3d8ded10bfa265ca88b6e7 /synapse/push | |
parent | Merge pull request #638 from matrix-org/daniel/appserviceid (diff) | |
download | synapse-aa11db5f119b9fa88242b0df95cfddd00e196ca1.tar.xz |
Fix cache invalidation so deleting access tokens (which we did when changing password) actually takes effect without HS restart. Reinstate the code to avoid logging out the session that changed the password, removed in 415c2f05491ce65a4fc34326519754cd1edd9c54
Diffstat (limited to 'synapse/push')
-rw-r--r-- | synapse/push/pusherpool.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/synapse/push/pusherpool.py b/synapse/push/pusherpool.py index 772a095f8b..28ec94d866 100644 --- a/synapse/push/pusherpool.py +++ b/synapse/push/pusherpool.py @@ -92,14 +92,14 @@ class PusherPool: yield self.remove_pusher(p['app_id'], p['pushkey'], p['user_name']) @defer.inlineCallbacks - def remove_pushers_by_user(self, user_id): + def remove_pushers_by_user_except_access_tokens(self, user_id, except_token_ids): all = yield self.store.get_all_pushers() logger.info( - "Removing all pushers for user %s", - user_id, + "Removing all pushers for user %s except access tokens ids %r", + user_id, except_token_ids ) for p in all: - if p['user_name'] == user_id: + if p['user_name'] == user_id and p['access_token'] not in except_token_ids: logger.info( "Removing pusher for app id %s, pushkey %s, user %s", p['app_id'], p['pushkey'], p['user_name'] |