From 7c3f79cb9fcd51ade2b25c700567bdc101250ce1 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Sat, 21 Jan 2017 20:30:10 +0000 Subject: [PATCH] core: early out in handle_incoming_tx if already in pool or blockchain --- src/cryptonote_core/cryptonote_core.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/cryptonote_core/cryptonote_core.cpp b/src/cryptonote_core/cryptonote_core.cpp index 5294431d..5be25a41 100644 --- a/src/cryptonote_core/cryptonote_core.cpp +++ b/src/cryptonote_core/cryptonote_core.cpp @@ -496,6 +496,18 @@ namespace cryptonote return false; } + if(m_mempool.have_tx(tx_hash)) + { + LOG_PRINT_L2("tx " << tx_hash << "already have transaction in tx_pool"); + return true; + } + + if(m_blockchain_storage.have_tx(tx_hash)) + { + LOG_PRINT_L2("tx " << tx_hash << " already have transaction in blockchain"); + return true; + } + if(!check_tx_syntax(tx)) { LOG_PRINT_L1("WRONG TRANSACTION BLOB, Failed to check tx " << tx_hash << " syntax, rejected");