summary refs log tree commit diff
path: root/synapse/handlers/profile.py
diff options
context:
space:
mode:
authorAndrew Morgan <andrew@amorgan.xyz>2020-12-31 13:40:07 +0000
committerAndrew Morgan <andrew@amorgan.xyz>2020-12-31 13:40:07 +0000
commit47c25048c551570c97fa71db60c41d3dffa23773 (patch)
tree0ab55796a669536f110b3d2ee022ae73c3f2c13f /synapse/handlers/profile.py
parentMerge commit 'fedfdfd75' into anoa/dinsic_release_1_23_1 (diff)
parentMerge branch 'master' into develop (diff)
downloadsynapse-47c25048c551570c97fa71db60c41d3dffa23773.tar.xz
Merge commit '24229fac0' into anoa/dinsic_release_1_23_1
Diffstat (limited to 'synapse/handlers/profile.py')
-rw-r--r--synapse/handlers/profile.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/synapse/handlers/profile.py b/synapse/handlers/profile.py

index f1d3e6b7b5..c9a3a4a592 100644 --- a/synapse/handlers/profile.py +++ b/synapse/handlers/profile.py
@@ -196,6 +196,13 @@ class ProfileHandler(BaseHandler): except RequestSendFailed as e: raise SynapseError(502, "Failed to fetch profile") from e except HttpResponseException as e: + if e.code < 500 and e.code != 404: + # Other codes are not allowed in c2s API + logger.info( + "Server replied with wrong response: %s %s", e.code, e.msg + ) + + raise SynapseError(502, "Failed to fetch profile") raise e.to_synapse_error() async def get_profile_from_cache(self, user_id: str) -> JsonDict: @@ -222,7 +229,7 @@ class ProfileHandler(BaseHandler): profile = await self.store.get_from_remote_profile_cache(user_id) return profile or {} - async def get_displayname(self, target_user: UserID) -> str: + async def get_displayname(self, target_user: UserID) -> Optional[str]: if self.hs.is_mine(target_user): try: displayname = await self.store.get_profile_displayname( @@ -357,7 +364,7 @@ class ProfileHandler(BaseHandler): # start a profile replication push run_in_background(self._replicate_profiles) - async def get_avatar_url(self, target_user: UserID) -> str: + async def get_avatar_url(self, target_user: UserID) -> Optional[str]: if self.hs.is_mine(target_user): try: avatar_url = await self.store.get_profile_avatar_url(