diff --git a/src/cc/dice.cpp b/src/cc/dice.cpp index dc0ecdec0..d7b956d76 100644 --- a/src/cc/dice.cpp +++ b/src/cc/dice.cpp @@ -126,6 +126,12 @@ void *dicefinish(void *_ptr) if ( DecodeHexTx(tx,res) != 0 ) { txid = tx.GetHash(); + if ( mempool.exists(tx) == 0 ) + { + CValidationState state; + bool fMissingInputs,fOverrideFees = false; + AcceptToMemoryPool(mempool, state, tx, false, &fMissingInputs, !fOverrideFees); + } RelayTransaction(tx); fprintf(stderr,"%s\nresult.(%s)\n",res.c_str(),uint256_str(str,txid)); } diff --git a/src/rpcrawtransaction.cpp b/src/rpcrawtransaction.cpp index 125be1d73..fa4118294 100644 --- a/src/rpcrawtransaction.cpp +++ b/src/rpcrawtransaction.cpp @@ -1137,7 +1137,7 @@ UniValue sendrawtransaction(const UniValue& params, bool fHelp) } } else if (fHaveChain) { throw JSONRPCError(RPC_TRANSACTION_ALREADY_IN_CHAIN, "transaction already in block chain"); - } + } RelayTransaction(tx); return hashTx.GetHex();