diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2016-01-29 19:44:48 +0000 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2016-01-29 19:44:48 +0000 |
commit | b11539fda74c0eb1a2b86aa31105eb6addc17256 (patch) | |
tree | 34521ddabae5326fcd7e8f4cb200df80132edbe5 /src/wallet/wallet2.h | |
parent | tx_pool: serialize missing kept_by_block flag (diff) | |
download | monero-b11539fda74c0eb1a2b86aa31105eb6addc17256.tar.xz |
wallet: detect and handle failed outgoing transfers
When a transaction is not found in the pool anymore, it is marked
as failed, and displayed as such in show_transfers.
Diffstat (limited to 'src/wallet/wallet2.h')
-rw-r--r-- | src/wallet/wallet2.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h index e29619444..6ecfdf026 100644 --- a/src/wallet/wallet2.h +++ b/src/wallet/wallet2.h @@ -119,6 +119,7 @@ namespace tools time_t m_sent_time; std::vector<cryptonote::tx_destination_entry> m_dests; crypto::hash m_payment_id; + enum { pending, pending_not_in_pool, failed } m_state; }; struct confirmed_transfer_details @@ -375,6 +376,7 @@ namespace tools void parse_block_round(const cryptonote::blobdata &blob, cryptonote::block &bl, crypto::hash &bl_id, bool &error) const; bool use_fork_rules(uint8_t version); uint64_t get_upper_tranaction_size_limit(); + void check_pending_txes(); cryptonote::account_base m_account; std::string m_daemon_address; @@ -412,7 +414,7 @@ namespace tools } BOOST_CLASS_VERSION(tools::wallet2, 10) BOOST_CLASS_VERSION(tools::wallet2::payment_details, 0) -BOOST_CLASS_VERSION(tools::wallet2::unconfirmed_transfer_details, 1) +BOOST_CLASS_VERSION(tools::wallet2::unconfirmed_transfer_details, 2) BOOST_CLASS_VERSION(tools::wallet2::confirmed_transfer_details, 1) namespace boost @@ -440,6 +442,9 @@ namespace boost return; a & x.m_dests; a & x.m_payment_id; + if (ver < 2) + return; + a & x.m_state; } template <class Archive> |