diff --git a/src/daemon/MoneroDaemonModel.cpp b/src/daemon/MoneroDaemonModel.cpp index 144a5bd..0ddeb6e 100644 --- a/src/daemon/MoneroDaemonModel.cpp +++ b/src/daemon/MoneroDaemonModel.cpp @@ -154,7 +154,7 @@ namespace monero { } if (!txs.empty()) { for (const shared_ptr& tx : txs) { - tx->block = self; + tx->block = static_pointer_cast(self); } } diff --git a/src/wallet/MoneroWallet.cpp b/src/wallet/MoneroWallet.cpp index 9b6bd3d..42b4cf0 100644 --- a/src/wallet/MoneroWallet.cpp +++ b/src/wallet/MoneroWallet.cpp @@ -107,7 +107,7 @@ namespace monero { (*tx->block)->txs = txs; (*tx->block)->height = *aTx->getHeight(); } - (*aTx->block)->merge(*tx->block); + (*aTx->block)->merge(*aTx->block, *tx->block); } else { aTx->merge(aTx, tx); } @@ -116,7 +116,7 @@ namespace monero { // merge common block of different txs if (tx->getHeight() != boost::none && *tx->getHeight() == *aTx->getHeight()) { - (*aTx->block)->merge(*tx->block); + (*aTx->block)->merge(*aTx->block, *tx->block); //if (aTx.getIsConfirmed()) assertTrue(aTx.getBlock().getTxs().contains(aTx)); } } @@ -798,7 +798,7 @@ namespace monero { // construct transfer shared_ptr incomingTransferBase = shared_ptr(new MoneroIncomingTransfer()); MoneroIncomingTransfer* incomingTransfer = static_cast(&*incomingTransferBase); - incomingTransfer->tx = txBase; + incomingTransfer->tx = static_pointer_cast(txBase); tx->incomingTransfers.push_back(incomingTransferBase); incomingTransfer->amount = pd.m_amount; incomingTransfer->accountIndex = pd.m_subaddr_index.major; diff --git a/src/wallet/MoneroWalletModel.h b/src/wallet/MoneroWalletModel.h index 7aaf449..cab3afa 100644 --- a/src/wallet/MoneroWalletModel.h +++ b/src/wallet/MoneroWalletModel.h @@ -89,7 +89,7 @@ namespace monero { * Models a base transfer of funds to or from the wallet. */ struct MoneroTransfer : SerializableStruct { - shared_ptr tx; // TODO *** switch to MoneroTxWallet *** + shared_ptr tx; boost::optional isIncoming; boost::optional amount; boost::optional accountIndex;