diff options
author | Joey Hess <joeyh@joeyh.name> | 2016-08-19 16:53:55 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2016-08-19 16:53:55 -0400 |
commit | 6b3253bfabeb2e170c8dada9f5c22718d23e018a (patch) | |
tree | 295d07e62bfdf548ead905d91141d6a59137dd57 /keysafe.hs | |
parent | f37b78acc2ba8272d8181f636eac6eb123c59013 (diff) | |
download | keysafe-6b3253bfabeb2e170c8dada9f5c22718d23e018a.tar.gz |
avoid displaying messages while progress bar is displayed
Diffstat (limited to 'keysafe.hs')
-rw-r--r-- | keysafe.hs | 18 |
1 files changed, 11 insertions, 7 deletions
@@ -197,23 +197,27 @@ restore storagelocations ui possibletunables secretkeydest = do <> castCost (getDecryptionCost candidatekeys) case combineShares tunables [shares] of Left e -> showError ui e - Right esk -> withProgress ui "Decrypting" - (decryptdesc cost) $ \setpercent -> - go tunables [shares] sis setpercent $ - tryDecrypt candidatekeys esk + Right esk -> do + final <- withProgress ui "Decrypting" + (decryptdesc cost) $ \setpercent -> + go tunables [shares] sis setpercent $ + tryDecrypt candidatekeys esk + final where go tunables firstshares sis setpercent r = case r of - DecryptFailed -> showError ui "Decryption failed! Unknown why it would fail at this point." + DecryptFailed -> return $ + showError ui "Decryption failed! Unknown why it would fail at this point." DecryptSuccess secretkey -> do _ <- setpercent 100 writeSecretKey secretkeydest secretkey - showInfo ui "Success" "Your secret key successfully restored!" + return $ + showInfo ui "Success" "Your secret key successfully restored!" DecryptIncomplete kek -> do -- Download shares for another chunk. (nextshares, sis') <- retrieveShares storagelocations sis (return ()) let shares = firstshares ++ [nextshares] case combineShares tunables shares of - Left e -> showError ui e + Left e -> return $ showError ui e Right esk -> go tunables shares sis' setpercent $ decrypt kek esk |