aboutsummaryrefslogtreecommitdiff
path: root/src/rpc/rawtransaction.cpp
diff options
context:
space:
mode:
authorMatt Corallo <git@bluematt.me>2017-11-20 12:18:52 -0800
committerMatt Corallo <git@bluematt.me>2017-11-20 12:18:52 -0800
commitd9340ce9124ecc4c3588a411de6868fd8f995074 (patch)
tree504c40ffca9e46d412eacbb10572abf30d80d0ed /src/rpc/rawtransaction.cpp
parent7293d064133aeafd9f0ae0bdbb2ed74a44d91ecc (diff)
downloadbitcoin-d9340ce9124ecc4c3588a411de6868fd8f995074.tar.xz
Fix sendrawtransaction hang when sending a tx already in mempool
Diffstat (limited to 'src/rpc/rawtransaction.cpp')
-rw-r--r--src/rpc/rawtransaction.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/rpc/rawtransaction.cpp b/src/rpc/rawtransaction.cpp
index e65959bf0e..3aff1e9fbf 100644
--- a/src/rpc/rawtransaction.cpp
+++ b/src/rpc/rawtransaction.cpp
@@ -970,6 +970,10 @@ UniValue sendrawtransaction(const JSONRPCRequest& request)
}
} else if (fHaveChain) {
throw JSONRPCError(RPC_TRANSACTION_ALREADY_IN_CHAIN, "transaction already in block chain");
+ } else {
+ // Make sure we don't block forever if re-sending
+ // a transaction already in mempool.
+ promise.set_value();
}
} // cs_main