diff --git a/synapse/rest/events.py b/synapse/rest/events.py
index 92ff5e5ca7..3c1b041bfe 100644
--- a/synapse/rest/events.py
+++ b/synapse/rest/events.py
@@ -26,7 +26,6 @@ import logging
logger = logging.getLogger(__name__)
-
class EventStreamRestServlet(RestServlet):
PATTERN = client_path_pattern("/events$")
diff --git a/synapse/rest/presence.py b/synapse/rest/presence.py
index 138cc88a05..502ed0d4ca 100644
--- a/synapse/rest/presence.py
+++ b/synapse/rest/presence.py
@@ -117,8 +117,6 @@ class PresenceListRestServlet(RestServlet):
logger.exception("JSON parse error")
raise SynapseError(400, "Unable to parse content")
- deferreds = []
-
if "invite" in content:
for u in content["invite"]:
if not isinstance(u, basestring):
@@ -126,8 +124,9 @@ class PresenceListRestServlet(RestServlet):
if len(u) == 0:
continue
invited_user = self.hs.parse_userid(u)
- deferreds.append(self.handlers.presence_handler.send_invite(
- observer_user=user, observed_user=invited_user))
+ yield self.handlers.presence_handler.send_invite(
+ observer_user=user, observed_user=invited_user
+ )
if "drop" in content:
for u in content["drop"]:
@@ -136,10 +135,9 @@ class PresenceListRestServlet(RestServlet):
if len(u) == 0:
continue
dropped_user = self.hs.parse_userid(u)
- deferreds.append(self.handlers.presence_handler.drop(
- observer_user=user, observed_user=dropped_user))
-
- yield defer.DeferredList(deferreds)
+ yield self.handlers.presence_handler.drop(
+ observer_user=user, observed_user=dropped_user
+ )
defer.returnValue((200, {}))
diff --git a/synapse/rest/register.py b/synapse/rest/register.py
index 5c15614ea9..f25e23a158 100644
--- a/synapse/rest/register.py
+++ b/synapse/rest/register.py
@@ -222,6 +222,7 @@ class RegisterRestServlet(RestServlet):
threepidCreds = register_json['threepidCreds']
handler = self.handlers.registration_handler
+ logger.debug("Registering email. threepidcreds: %s" % (threepidCreds))
yield handler.register_email(threepidCreds)
session["threepidCreds"] = threepidCreds # store creds for next stage
session[LoginType.EMAIL_IDENTITY] = True # mark email as done
@@ -232,6 +233,7 @@ class RegisterRestServlet(RestServlet):
@defer.inlineCallbacks
def _do_password(self, request, register_json, session):
+ yield
if (self.hs.config.enable_registration_captcha and
not session[LoginType.RECAPTCHA]):
# captcha should've been done by this stage!
@@ -259,6 +261,9 @@ class RegisterRestServlet(RestServlet):
)
if session[LoginType.EMAIL_IDENTITY]:
+ logger.debug("Binding emails %s to %s" % (
+ session["threepidCreds"], user_id)
+ )
yield handler.bind_emails(user_id, session["threepidCreds"])
result = {
diff --git a/synapse/rest/room.py b/synapse/rest/room.py
index 4f6d039b61..cc6ffb9aff 100644
--- a/synapse/rest/room.py
+++ b/synapse/rest/room.py
@@ -148,7 +148,7 @@ class RoomStateEventRestServlet(RestServlet):
content = _parse_json(request)
event = self.event_factory.create_event(
- etype=urllib.unquote(event_type),
+ etype=event_type, # already urldecoded
content=content,
room_id=urllib.unquote(room_id),
user_id=user.to_string(),
|