From 8cbd262ee4db2133b5ab7a50e711a797eb8b542d Mon Sep 17 00:00:00 2001 From: woodser Date: Thu, 13 Jun 2019 07:54:43 -0400 Subject: [PATCH] finish tx.merge() impl less merging collection fields --- src/daemon/MoneroDaemon.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/daemon/MoneroDaemon.cpp b/src/daemon/MoneroDaemon.cpp index 244dca0..e0926bc 100644 --- a/src/daemon/MoneroDaemon.cpp +++ b/src/daemon/MoneroDaemon.cpp @@ -257,7 +257,16 @@ namespace monero { } } - throw runtime_error("Not implemented"); + // handle unrelayed -> relayed -> confirmed + if (*isConfirmed) { + inTxPool = false; + receivedTimestamp = boost::none; + lastRelayedTimestamp = boost::none; + } else { + inTxPool = MoneroUtils::reconcile(inTxPool, tx.inTxPool, boost::none, true, boost::none); // unrelayed -> tx pool + receivedTimestamp = MoneroUtils::reconcile(receivedTimestamp, tx.receivedTimestamp, boost::none, boost::none, false); // take earliest receive time + lastRelayedTimestamp = MoneroUtils::reconcile(lastRelayedTimestamp, tx.lastRelayedTimestamp, boost::none, boost::none, true); // take latest relay time + } } void MoneroKeyImage::merge(const MoneroKeyImage& keyImage) {