diff options
-rw-r--r-- | src/simplewallet/simplewallet.cpp | 4 | ||||
-rw-r--r-- | src/wallet/wallet_rpc_server.cpp | 9 | ||||
-rw-r--r-- | src/wallet/wallet_rpc_server_commands_defs.h | 4 |
3 files changed, 10 insertions, 7 deletions
diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp index 88ca09683..1640fa990 100644 --- a/src/simplewallet/simplewallet.cpp +++ b/src/simplewallet/simplewallet.cpp @@ -5914,12 +5914,14 @@ bool simple_wallet::transfer_main(int transfer_type, const std::vector<std::stri uint64_t total_fee = 0; uint64_t dust_not_in_fee = 0; uint64_t dust_in_fee = 0; + uint64_t change = 0; for (size_t n = 0; n < ptx_vector.size(); ++n) { total_fee += ptx_vector[n].fee; for (auto i: ptx_vector[n].selected_transfers) total_sent += m_wallet->get_transfer_details(i).amount(); total_sent -= ptx_vector[n].change_dts.amount + ptx_vector[n].fee; + change += ptx_vector[n].change_dts.amount; if (ptx_vector[n].dust_added_to_fee) dust_in_fee += ptx_vector[n].dust; @@ -5957,7 +5959,7 @@ bool simple_wallet::transfer_main(int transfer_type, const std::vector<std::stri if (transfer_type == TransferLocked) { float days = locked_blocks / 720.0f; - prompt << boost::format(tr(".\nThis transaction will unlock on block %llu, in approximately %s days (assuming 2 minutes per block)")) % ((unsigned long long)unlock_block) % days; + prompt << boost::format(tr(".\nThis transaction (including %s change) will unlock on block %llu, in approximately %s days (assuming 2 minutes per block)")) % cryptonote::print_money(change) % ((unsigned long long)unlock_block) % days; } if (m_wallet->print_ring_members()) { diff --git a/src/wallet/wallet_rpc_server.cpp b/src/wallet/wallet_rpc_server.cpp index 1dd589d41..aaad82bb7 100644 --- a/src/wallet/wallet_rpc_server.cpp +++ b/src/wallet/wallet_rpc_server.cpp @@ -86,12 +86,10 @@ namespace void set_confirmations(tools::wallet_rpc::transfer_entry &entry, uint64_t blockchain_height, uint64_t block_reward) { if (entry.height >= blockchain_height || (entry.height == 0 && (!strcmp(entry.type.c_str(), "pending") || !strcmp(entry.type.c_str(), "pool")))) - { entry.confirmations = 0; - entry.suggested_confirmations_threshold = 0; - return; - } - entry.confirmations = blockchain_height - entry.height; + else + entry.confirmations = blockchain_height - entry.height; + if (block_reward == 0) entry.suggested_confirmations_threshold = 0; else @@ -1850,6 +1848,7 @@ namespace tools rpc_transfers.tx_hash = epee::string_tools::pod_to_hex(td.m_txid); rpc_transfers.subaddr_index = {td.m_subaddr_index.major, td.m_subaddr_index.minor}; rpc_transfers.key_image = td.m_key_image_known ? epee::string_tools::pod_to_hex(td.m_key_image) : ""; + rpc_transfers.unlocked = m_wallet->is_transfer_unlocked(td); res.transfers.push_back(rpc_transfers); } } diff --git a/src/wallet/wallet_rpc_server_commands_defs.h b/src/wallet/wallet_rpc_server_commands_defs.h index 5635df5de..604bc4175 100644 --- a/src/wallet/wallet_rpc_server_commands_defs.h +++ b/src/wallet/wallet_rpc_server_commands_defs.h @@ -47,7 +47,7 @@ // advance which version they will stop working with // Don't go over 32767 for any of these #define WALLET_RPC_VERSION_MAJOR 1 -#define WALLET_RPC_VERSION_MINOR 11 +#define WALLET_RPC_VERSION_MINOR 12 #define MAKE_WALLET_RPC_VERSION(major,minor) (((major)<<16)|(minor)) #define WALLET_RPC_VERSION MAKE_WALLET_RPC_VERSION(WALLET_RPC_VERSION_MAJOR, WALLET_RPC_VERSION_MINOR) namespace tools @@ -982,6 +982,7 @@ namespace wallet_rpc std::string tx_hash; cryptonote::subaddress_index subaddr_index; std::string key_image; + bool unlocked; BEGIN_KV_SERIALIZE_MAP() KV_SERIALIZE(amount) @@ -990,6 +991,7 @@ namespace wallet_rpc KV_SERIALIZE(tx_hash) KV_SERIALIZE(subaddr_index) KV_SERIALIZE(key_image) + KV_SERIALIZE(unlocked) END_KV_SERIALIZE_MAP() }; |