From 2075a572fee32084365017c9ab0730b86eff5a8f Mon Sep 17 00:00:00 2001 From: Ajay Bura Date: Sun, 8 May 2022 11:55:41 +0530 Subject: [PATCH] Fixed cinny verified device failed to verify other --- .../emoji-verification/EmojiVerification.jsx | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/app/organisms/emoji-verification/EmojiVerification.jsx b/src/app/organisms/emoji-verification/EmojiVerification.jsx index 72b93639..8f08c489 100644 --- a/src/app/organisms/emoji-verification/EmojiVerification.jsx +++ b/src/app/organisms/emoji-verification/EmojiVerification.jsx @@ -28,7 +28,10 @@ function EmojiVerificationContent({ data, requestClose }) { const mountStore = useStore(); const beginVerification = async () => { - if (mx.getCrossSigningId() === null && isCrossVerified(mx.deviceId)) { + if ( + isCrossVerified(mx.deviceId) + && (mx.getCrossSigningId() === null || await mx.crypto.crossSigningInfo.isStoredInKeyCache('self_signing') === false) + ) { if (!hasPrivateKey(getDefaultSSKey())) { const keyData = await accessSecretStorage('Emoji verification'); if (!keyData) { @@ -66,10 +69,13 @@ function EmojiVerificationContent({ data, requestClose }) { useEffect(() => { mountStore.setItem(true); const handleChange = () => { + if (request.done || request.cancelled) { + requestClose(); + return; + } if (targetDevice && request.started) { beginVerification(); } - if (request.done || request.cancelled) requestClose(); }; if (request === null) return null; @@ -77,7 +83,7 @@ function EmojiVerificationContent({ data, requestClose }) { req.on('change', handleChange); return () => { req.off('change', handleChange); - if (!req.cancelled && !req.done) { + if (req.cancelled === false && req.done === false) { req.cancel(); } };