diff --git a/src/qt/walletmodeltransaction.h b/src/qt/walletmodeltransaction.h --- a/src/qt/walletmodeltransaction.h +++ b/src/qt/walletmodeltransaction.h @@ -41,7 +41,7 @@ private: QList recipients; CWalletTx *walletTransaction; - CReserveKey *keyChange; + std::unique_ptr keyChange; Amount fee; }; diff --git a/src/qt/walletmodeltransaction.cpp b/src/qt/walletmodeltransaction.cpp --- a/src/qt/walletmodeltransaction.cpp +++ b/src/qt/walletmodeltransaction.cpp @@ -9,12 +9,11 @@ WalletModelTransaction::WalletModelTransaction( const QList &_recipients) - : recipients(_recipients), walletTransaction(0), keyChange(0), fee() { + : recipients(_recipients), walletTransaction(0), fee() { walletTransaction = new CWalletTx(); } WalletModelTransaction::~WalletModelTransaction() { - delete keyChange; delete walletTransaction; } @@ -81,9 +80,9 @@ } void WalletModelTransaction::newPossibleKeyChange(CWallet *wallet) { - keyChange = new CReserveKey(wallet); + keyChange.reset(new CReserveKey(wallet)); } CReserveKey *WalletModelTransaction::getPossibleKeyChange() { - return keyChange; + return keyChange.get(); }