summary refs log tree commit diff
path: root/synapse/handlers/typing.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2015-08-26 11:08:23 +0100
committerErik Johnston <erik@matrix.org>2015-08-26 11:08:23 +0100
commitda51acf0e752badb73c036f4b1cf0ec943b6dcb1 (patch)
treeb23978ffedba7b45aa092c85314fe0682f5f2653 /synapse/handlers/typing.py
parentDon't loop over all rooms ever in typing.get_new_events_for_user (diff)
downloadsynapse-da51acf0e752badb73c036f4b1cf0ec943b6dcb1.tar.xz
Remove needless existence checks
Diffstat (limited to 'synapse/handlers/typing.py')
-rw-r--r--synapse/handlers/typing.py10
1 files changed, 3 insertions, 7 deletions
diff --git a/synapse/handlers/typing.py b/synapse/handlers/typing.py
index 1ed220d871..d7096aab8c 100644
--- a/synapse/handlers/typing.py
+++ b/synapse/handlers/typing.py
@@ -204,15 +204,11 @@ class TypingNotificationHandler(BaseHandler):
             )
 
     def _push_update_local(self, room_id, user, typing):
-        if room_id not in self._room_serials:
-            self._room_serials[room_id] = 0
-            self._room_typing[room_id] = set()
-
-        room_set = self._room_typing[room_id]
+        room_set = self._room_typing.setdefault(room_id, set())
         if typing:
             room_set.add(user)
-        elif user in room_set:
-            room_set.remove(user)
+        else:
+            room_set.discard(user)
 
         self._latest_room_serial += 1
         self._room_serials[room_id] = self._latest_room_serial