From b11a84a3473e501bfac001eec92bafb5e8843fcf Mon Sep 17 00:00:00 2001 From: maciejhirsz Date: Mon, 10 Apr 2017 11:22:32 +0200 Subject: [PATCH] Unlock transaction on RPC errors --- js/src/api/local/localAccountsMiddleware.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/js/src/api/local/localAccountsMiddleware.js b/js/src/api/local/localAccountsMiddleware.js index 7f01ee913..753de8a4c 100644 --- a/js/src/api/local/localAccountsMiddleware.js +++ b/js/src/api/local/localAccountsMiddleware.js @@ -169,6 +169,12 @@ export default class LocalAccountsMiddleware extends Middleware { this.rpcRequest('parity_nextNonce', [from]), account.decryptPrivateKey(password) ]) + .catch((err) => { + transactions.unlock(id); + + // transaction got unlocked, can propagate rejection further + throw err; + }) .then(([nonce, privateKey]) => { if (!privateKey) { transactions.unlock(id);