Merge #16415: Get rid of PendingWalletTx class
4d94916f0dGet rid of PendingWalletTx class. (Russell Yanofsky) Pull request description: No reason for this class to exist if it doesn't have any code to run in the destructor.e10e1e8db0from https://github.com/bitcoin/bitcoin/pull/16208 recently removed the destructor code that would return an unused key if the transaction wasn't committed. This is just cleanup, there's no change in behavior. ACKs for top commit: ariard: utACK4d94916. Successfully built both `bitcoind` and `bitcoin-qt`. `PendingWalletTx` was only a wrapper to enforce call to `ReturnDestination` if `CommitTransaction` doesn't `KeepDestination` before. promag: ACK4d94916f0d, refactor looks good to me. meshcollider: utACK4d94916f0dTree-SHA512: f3f93d2f2f5d8f1e7810d609d881c1b1cbbaa8629f483f4293e20b3210292605e947bc4903fde9d2d8736277ca3bd6de182f7eac1e13515d5a327f2ebc130839
This commit is contained in:
6 files changed
+33
-55
No files matched your search
@@ -392,7 +392,7 @@ void SendCoinsDialog::on_sendButton_clicked()
|
||||
accept();
|
||||
CoinControlDialog::coinControl()->UnSelectAll();
|
||||
coinControlUpdateLabels();
|
||||
Q_EMIT coinsSent(currentTransaction.getWtx()->get().GetHash());
|
||||
Q_EMIT coinsSent(currentTransaction.getWtx()->GetHash());
|
||||
}
|
||||
fNewRecipientAllowed = true;
|
||||
}
|
||||
|
||||
@@ -261,11 +261,11 @@ WalletModel::SendCoinsReturn WalletModel::sendCoins(WalletModelTransaction &tran
|
||||
|
||||
auto& newTx = transaction.getWtx();
|
||||
std::string rejectReason;
|
||||
if (!newTx->commit({} /* mapValue */, std::move(vOrderForm), rejectReason))
|
||||
if (!wallet().commitTransaction(newTx, {} /* mapValue */, std::move(vOrderForm), rejectReason))
|
||||
return SendCoinsReturn(TransactionCommitFailed, QString::fromStdString(rejectReason));
|
||||
|
||||
CDataStream ssTx(SER_NETWORK, PROTOCOL_VERSION);
|
||||
ssTx << newTx->get();
|
||||
ssTx << *newTx;
|
||||
transaction_array.append(&(ssTx[0]), ssTx.size());
|
||||
}
|
||||
|
||||
|
||||
@@ -21,14 +21,14 @@ QList<SendCoinsRecipient> WalletModelTransaction::getRecipients() const
|
||||
return recipients;
|
||||
}
|
||||
|
||||
std::unique_ptr<interfaces::PendingWalletTx>& WalletModelTransaction::getWtx()
|
||||
CTransactionRef& WalletModelTransaction::getWtx()
|
||||
{
|
||||
return wtx;
|
||||
}
|
||||
|
||||
unsigned int WalletModelTransaction::getTransactionSize()
|
||||
{
|
||||
return wtx ? GetVirtualTransactionSize(wtx->get()) : 0;
|
||||
return wtx ? GetVirtualTransactionSize(*wtx) : 0;
|
||||
}
|
||||
|
||||
CAmount WalletModelTransaction::getTransactionFee() const
|
||||
@@ -43,7 +43,7 @@ void WalletModelTransaction::setTransactionFee(const CAmount& newFee)
|
||||
|
||||
void WalletModelTransaction::reassignAmounts(int nChangePosRet)
|
||||
{
|
||||
const CTransaction* walletTransaction = &wtx->get();
|
||||
const CTransaction* walletTransaction = wtx.get();
|
||||
int i = 0;
|
||||
for (QList<SendCoinsRecipient>::iterator it = recipients.begin(); it != recipients.end(); ++it)
|
||||
{
|
||||
|
||||
@@ -16,7 +16,6 @@ class SendCoinsRecipient;
|
||||
|
||||
namespace interfaces {
|
||||
class Node;
|
||||
class PendingWalletTx;
|
||||
}
|
||||
|
||||
/** Data model for a walletmodel transaction. */
|
||||
@@ -27,7 +26,7 @@ public:
|
||||
|
||||
QList<SendCoinsRecipient> getRecipients() const;
|
||||
|
||||
std::unique_ptr<interfaces::PendingWalletTx>& getWtx();
|
||||
CTransactionRef& getWtx();
|
||||
unsigned int getTransactionSize();
|
||||
|
||||
void setTransactionFee(const CAmount& newFee);
|
||||
@@ -39,7 +38,7 @@ public:
|
||||
|
||||
private:
|
||||
QList<SendCoinsRecipient> recipients;
|
||||
std::unique_ptr<interfaces::PendingWalletTx> wtx;
|
||||
CTransactionRef wtx;
|
||||
CAmount fee;
|
||||
};
|
||||
|
||||
|
||||
Reference in new issue
Block a user