diff options
| author | Jaquee <jaquee.monero@gmail.com> | 2016-12-12 21:39:29 +0100 |
|---|---|---|
| committer | Jaquee <jaquee.monero@gmail.com> | 2016-12-12 21:50:50 +0100 |
| commit | 3b4539ee7e75779029fc77d66263c0ae164af396 (patch) | |
| tree | 8b340ead05c950767ba6f8776a864eff2afced39 /src/wallet/api/address_book.cpp | |
| parent | 5b7f1fc8e4fd83db5c702d440754b3bf246b9542 (diff) | |
| download | monzero-core-3b4539ee7e75779029fc77d66263c0ae164af396.tar.gz monzero-core-3b4539ee7e75779029fc77d66263c0ae164af396.tar.xz monzero-core-3b4539ee7e75779029fc77d66263c0ae164af396.zip | |
addressbook updates
Diffstat (limited to 'src/wallet/api/address_book.cpp')
| -rw-r--r-- | src/wallet/api/address_book.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/wallet/api/address_book.cpp b/src/wallet/api/address_book.cpp index 198ce17cd..edeb5bb46 100644 --- a/src/wallet/api/address_book.cpp +++ b/src/wallet/api/address_book.cpp @@ -79,16 +79,16 @@ void AddressBookImpl::refresh() LOG_PRINT_L2("Refreshing addressbook"); clearRows(); + + // Fetch from Wallet2 and create vector of AddressBookRow objects + std::vector<tools::wallet2::address_book_row> rows = m_wallet->m_wallet->get_address_book(); + for (size_t i = 0; i < rows.size(); ++i) { + tools::wallet2::address_book_row * row = &rows.at(i); + + std::string payment_id = (row->m_payment_id == cryptonote::null_hash)? "" : epee::string_tools::pod_to_hex(row->m_payment_id); + std::string address = cryptonote::get_account_address_as_str(m_wallet->m_wallet->testnet(),row->m_address); - // Fetch from Wallet2 and create vector - for (auto const &a : m_wallet->m_wallet->get_address_book() ) { - auto row = a.second; - int rowId = a.first; - - std::string payment_id = (row.m_payment_id == cryptonote::null_hash)? "" : epee::string_tools::pod_to_hex(row.m_payment_id); - std::string address = cryptonote::get_account_address_as_str(m_wallet->m_wallet->testnet(),row.m_address); - - AddressBookRow * abr = new AddressBookRow(rowId, address, payment_id, row.m_description); + AddressBookRow * abr = new AddressBookRow(i, address, payment_id, row->m_description); m_rows.push_back(abr); } @@ -98,7 +98,8 @@ bool AddressBookImpl::deleteRow(int rowId) { LOG_PRINT_L2("Deleting address book row " << rowId); bool r = m_wallet->m_wallet->delete_address_book_row(rowId); - refresh(); + if (r) + refresh(); return r; } |
