summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2016-12-13 17:33:24 +0000
committerErik Johnston <erik@matrix.org>2016-12-13 17:33:24 +0000
commit1de53a7a1a6663351e23d1119f26caf56805a7c3 (patch)
treebd978fe0fb1a4202f4ee174791a0f1aabb3031a2
parentMerge pull request #1697 from matrix-org/erikj/fix_bg_member (diff)
downloadsynapse-1de53a7a1a6663351e23d1119f26caf56805a7c3.tar.xz
Fix caching on public room list
-rw-r--r--synapse/handlers/room_list.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/synapse/handlers/room_list.py b/synapse/handlers/room_list.py
index 1e883b23f6..667223df0c 100644
--- a/synapse/handlers/room_list.py
+++ b/synapse/handlers/room_list.py
@@ -62,7 +62,7 @@ class RoomListHandler(BaseHandler):
                 appservice and network id to use an appservice specific one.
                 Setting to None returns all public rooms across all lists.
         """
-        if search_filter or network_tuple is not (None, None):
+        if search_filter or (network_tuple and network_tuple.appservice_id is not None):
             # We explicitly don't bother caching searches or requests for
             # appservice specific lists.
             return self._get_public_room_list(
@@ -73,7 +73,9 @@ class RoomListHandler(BaseHandler):
         if not result:
             result = self.response_cache.set(
                 (limit, since_token),
-                self._get_public_room_list(limit, since_token)
+                self._get_public_room_list(
+                    limit, since_token, network_tuple=network_tuple
+                )
             )
         return result