One less try/catch

pull/21833/head
Travis Ralston 2021-04-12 14:57:21 -06:00
parent 106de5f7ba
commit 72a9bda3b7
1 changed files with 24 additions and 29 deletions

View File

@ -225,36 +225,31 @@ export default class AccessSecretStorageDialog extends React.PureComponent<IProp
try { try {
// Force reset secret storage (which resets the key backup) // Force reset secret storage (which resets the key backup)
await accessSecretStorage(async () => { await accessSecretStorage(async () => {
try { // Now reset cross-signing so everything Just Works™ again.
// Now reset cross-signing so everything Just Works™ again. const cli = MatrixClientPeg.get();
const cli = MatrixClientPeg.get(); await cli.bootstrapCrossSigning({
await cli.bootstrapCrossSigning({ authUploadDeviceSigningKeys: async (makeRequest) => {
authUploadDeviceSigningKeys: async (makeRequest) => { // XXX: Making this an import breaks the app.
// XXX: Making this an import breaks the app. const InteractiveAuthDialog = sdk.getComponent("views.dialogs.InteractiveAuthDialog");
const InteractiveAuthDialog = sdk.getComponent("views.dialogs.InteractiveAuthDialog"); const {finished} = Modal.createTrackedDialog(
const {finished} = Modal.createTrackedDialog( 'Cross-signing keys dialog', '', InteractiveAuthDialog,
'Cross-signing keys dialog', '', InteractiveAuthDialog, {
{ title: _t("Setting up keys"),
title: _t("Setting up keys"), matrixClient: cli,
matrixClient: cli, makeRequest,
makeRequest, },
}, );
); const [confirmed] = await finished;
const [confirmed] = await finished; if (!confirmed) {
if (!confirmed) { throw new Error("Cross-signing key upload auth canceled");
throw new Error("Cross-signing key upload auth canceled"); }
} },
}, setupNewCrossSigning: true,
setupNewCrossSigning: true, });
});
// Now we can indicate that the user is done pressing buttons, finally. // Now we can indicate that the user is done pressing buttons, finally.
// Upstream flows will detect the new secret storage, key backup, etc and use it. // Upstream flows will detect the new secret storage, key backup, etc and use it.
this.props.onFinished(true); this.props.onFinished(true);
} catch (e) {
console.error(e);
this.props.onFinished(false);
}
}, true); }, true);
} catch (e) { } catch (e) {
console.error(e); console.error(e);