summary refs log tree commit diff
path: root/synapse/rest
diff options
context:
space:
mode:
authorSerban Constantin <serban.constantin@sparkware.ro>2018-07-27 16:19:38 +0300
committerSerban Constantin <serban.constantin@gmail.com>2018-07-31 21:47:23 +0300
commit70af98e36155ee8d4a0ad79d9d33f891458fd3f6 (patch)
tree0d6741f46e44dcbd42b610a27828174d09aef844 /synapse/rest
parentMerge pull request #3628 from turt2live/travis/goodby-pdu-failures (diff)
downloadsynapse-70af98e36155ee8d4a0ad79d9d33f891458fd3f6.tar.xz
return NotFoundError if room not found
Per the Client-Server API[0] we should return
`M_NOT_FOUND` if the room isn't found instead
of generic SynapseError.

This ensures that /directory/list API returns
404 for room not found instead of 400.

[0]: https://matrix.org/docs/spec/client_server/unstable.html#get-matrix-client-r0-directory-list-room-roomid

Signed-off-by: Serban Constantin <serban.constantin@gmail.com>
Diffstat (limited to 'synapse/rest')
-rw-r--r--synapse/rest/client/v1/directory.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/synapse/rest/client/v1/directory.py b/synapse/rest/client/v1/directory.py
index 69dcd618cb..97733f3026 100644
--- a/synapse/rest/client/v1/directory.py
+++ b/synapse/rest/client/v1/directory.py
@@ -18,7 +18,7 @@ import logging
 
 from twisted.internet import defer
 
-from synapse.api.errors import AuthError, Codes, SynapseError
+from synapse.api.errors import AuthError, Codes, NotFoundError, SynapseError
 from synapse.http.servlet import parse_json_object_from_request
 from synapse.types import RoomAlias
 
@@ -159,7 +159,7 @@ class ClientDirectoryListServer(ClientV1RestServlet):
     def on_GET(self, request, room_id):
         room = yield self.store.get_room(room_id)
         if room is None:
-            raise SynapseError(400, "Unknown room")
+            raise NotFoundError("Unknown room")
 
         defer.returnValue((200, {
             "visibility": "public" if room["is_public"] else "private"