diff options
author | Patrick Cloke <clokep@users.noreply.github.com> | 2021-01-06 07:29:03 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-06 07:29:03 -0500 |
commit | 0248409bfade6a9eccf29efdd38d9003c0327a1d (patch) | |
tree | 3313720994d10819d4cd493e6924d10f274376d7 | |
parent | Ignore date-rotated logs (#9018) (diff) | |
download | synapse-0248409bfade6a9eccf29efdd38d9003c0327a1d.tar.xz |
Handle a display name / avatar URL not included in a federation request. (#9023)
These may be omitted if not set, but Synapse assumed they would be in the response.
-rw-r--r-- | changelog.d/9023.bugfix | 1 | ||||
-rw-r--r-- | synapse/handlers/profile.py | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/changelog.d/9023.bugfix b/changelog.d/9023.bugfix new file mode 100644 index 0000000000..deae64d933 --- /dev/null +++ b/changelog.d/9023.bugfix @@ -0,0 +1 @@ +Fix a longstanding issue where an internal server error would occur when requesting a profile over federation that did not include a display name / avatar URL. diff --git a/synapse/handlers/profile.py b/synapse/handlers/profile.py index dee0ef45e7..36f9ee4b71 100644 --- a/synapse/handlers/profile.py +++ b/synapse/handlers/profile.py @@ -156,7 +156,7 @@ class ProfileHandler(BaseHandler): except HttpResponseException as e: raise e.to_synapse_error() - return result["displayname"] + return result.get("displayname") async def set_displayname( self, @@ -246,7 +246,7 @@ class ProfileHandler(BaseHandler): except HttpResponseException as e: raise e.to_synapse_error() - return result["avatar_url"] + return result.get("avatar_url") async def set_avatar_url( self, |