aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/wallet2.h
diff options
context:
space:
mode:
authormoneromooo-monero <moneromooo-monero@users.noreply.github.com>2016-01-29 19:44:48 +0000
committermoneromooo-monero <moneromooo-monero@users.noreply.github.com>2016-01-29 19:44:48 +0000
commitb11539fda74c0eb1a2b86aa31105eb6addc17256 (patch)
tree34521ddabae5326fcd7e8f4cb200df80132edbe5 /src/wallet/wallet2.h
parenttx_pool: serialize missing kept_by_block flag (diff)
downloadmonero-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.h7
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>