diff --git a/apps/idos-enclave/src/lib/enclave.js b/apps/idos-enclave/src/lib/enclave.js index 200ac7ec3..06444f734 100644 --- a/apps/idos-enclave/src/lib/enclave.js +++ b/apps/idos-enclave/src/lib/enclave.js @@ -428,6 +428,8 @@ export class Enclave { this.unlockButton.disabled = false; this.confirmButton.disabled = false; this.backupButton.disabled = false; + port1.close(); + this.dialog.close(); return reject(error); } diff --git a/apps/idos-enclave/src/pages/App.tsx b/apps/idos-enclave/src/pages/App.tsx index 4953c0f82..cce6f22f2 100644 --- a/apps/idos-enclave/src/pages/App.tsx +++ b/apps/idos-enclave/src/pages/App.tsx @@ -88,6 +88,11 @@ export function App({ store, enclave }: AppProps) { } }, [theme]); + useEffect(() => { + if (mode === "new" || !responsePort.current) return; + if (!encryptionPublicKey) onError("Can’t find a public encryption key for this user"); + }, [mode, encryptionPublicKey, responsePort.current]); + const resetMethod = useCallback(() => setMethod(null), []); /**