Forráskód Böngészése

Handle ScanTimeoutError properly

Tulir Asokan 2 éve
szülő
commit
9da54dfcda

+ 2 - 1
mautrix_signal/commands/auth.py

@@ -19,6 +19,7 @@ import io
 from mausignald.errors import (
     AuthorizationFailedError,
     CaptchaRequiredError,
+    ScanTimeoutError,
     TimeoutException,
     UnexpectedResponse,
 )
@@ -119,7 +120,7 @@ async def link(evt: CommandEvent) -> None:
         account = await evt.bridge.signal.finish_link(
             session_id=sess.session_id, overwrite=True, device_name=device_name
         )
-    except TimeoutException:
+    except (TimeoutException, ScanTimeoutError):
         await evt.reply("Linking timed out, please try again.")
     except Exception:
         evt.log.exception("Fatal error while waiting for linking to finish")

+ 1 - 6
mautrix_signal/web/provisioning_api.py

@@ -201,15 +201,10 @@ class ProvisioningAPI:
                 f"Client cancelled link wait request ({session_id}) before it finished"
             )
             raise
-        except TimeoutException:
+        except (TimeoutException, ScanTimeoutError):
             raise web.HTTPBadRequest(
                 text='{"error": "Signal linking timed out"}', headers=self._headers
             )
-        except ScanTimeoutError:
-            raise web.HTTPBadRequest(
-                text='{"error": "Signald websocket disconnected before linking finished"}',
-                headers=self._headers,
-            )
         except InternalError:
             raise web.HTTPInternalServerError(
                 text='{"error": "Fatal error in Signal linking"}', headers=self._headers