switch listeners from vector to set

This commit is contained in:
woodser
2019-08-10 11:53:22 -04:00
parent 28a642b5bc
commit 60b73fac44
2 changed files with 5 additions and 5 deletions
+3 -3
View File
@@ -1116,17 +1116,17 @@ namespace monero {
void monero_wallet::add_listener(monero_wallet_listener& listener) {
MTRACE("add_listener()");
m_listeners.push_back(&listener);
m_listeners.insert(&listener);
m_w2_listener->update_listening();
}
void monero_wallet::remove_listener(monero_wallet_listener& listener) {
MTRACE("remove_listener()");
m_listeners.erase(remove(m_listeners.begin(), m_listeners.end(), &listener), m_listeners.end());
m_listeners.erase(&listener);
m_w2_listener->update_listening();
}
vector<monero_wallet_listener*> monero_wallet::get_listeners() {
set<monero_wallet_listener*> monero_wallet::get_listeners() {
MTRACE("get_listeners()");
return m_listeners;
}
+2 -2
View File
@@ -402,7 +402,7 @@ namespace monero {
/**
* Get the listeners registered with the wallet.
*/
vector<monero_wallet_listener*> get_listeners();
set<monero_wallet_listener*> get_listeners();
/**
* Synchronize the wallet with the daemon as a one-time synchronous process.
@@ -1300,7 +1300,7 @@ namespace monero {
friend struct wallet2_listener;
unique_ptr<tools::wallet2> m_w2; // internal wallet implementation
unique_ptr<wallet2_listener> m_w2_listener; // internal wallet implementation listener
vector<monero_wallet_listener*> m_listeners; // external wallet listeners
set<monero_wallet_listener*> m_listeners; // external wallet listeners
void init_common();
vector<monero_subaddress> get_subaddresses_aux(uint32_t account_idx, const vector<uint32_t>& subaddress_indices, const vector<tools::wallet2::transfer_details>& transfers) const;