From 7bb651de6a29e4b261b67aace1e0d5e4286b2e69 Mon Sep 17 00:00:00 2001
From: Travis Ralston <travpc@gmail.com>
Date: Fri, 12 Oct 2018 14:53:30 -0600
Subject: [PATCH] More sane handling of group errors and pep8

---
 synapse/handlers/groups_local.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/synapse/handlers/groups_local.py b/synapse/handlers/groups_local.py
index 68de8a8e5..66da6edad 100644
--- a/synapse/handlers/groups_local.py
+++ b/synapse/handlers/groups_local.py
@@ -20,7 +20,7 @@ from six import iteritems
 
 from twisted.internet import defer
 
-from synapse.api.errors import (SynapseError, HttpResponseException)
+from synapse.api.errors import (HttpResponseException, SynapseError)
 from synapse.types import get_domain_from_id
 
 logger = logging.getLogger(__name__)
@@ -40,12 +40,13 @@ def _create_rerouter(func_name):
             d = getattr(self.transport_client, func_name)(
                 destination, group_id, *args, **kwargs
             )
+
             def h(failure):
                 failure.trap(HttpResponseException)
                 e = failure.value
-                if e.code >= 400 and e.code < 500:
-                    raise SynapseError(e.code, e.msg)
-                failure.raiseException()
+                if e.code == 403:
+                    raise e.to_synapse_error()
+                return failure
             d.addErrback(h)
             return d
     return f