Safe add addresses to data model
This commit is contained in:
17
src/rpc.cpp
17
src/rpc.cpp
@@ -677,29 +677,34 @@ void RPC::refreshAddresses() {
|
|||||||
if (conn == nullptr)
|
if (conn == nullptr)
|
||||||
return noConnection();
|
return noConnection();
|
||||||
|
|
||||||
delete zaddresses;
|
auto newzaddresses = new QList<QString>();
|
||||||
zaddresses = new QList<QString>();
|
|
||||||
|
|
||||||
getZAddresses([=] (json reply) {
|
getZAddresses([=] (json reply) {
|
||||||
for (auto& it : reply.get<json::array_t>()) {
|
for (auto& it : reply.get<json::array_t>()) {
|
||||||
auto addr = QString::fromStdString(it.get<json::string_t>());
|
auto addr = QString::fromStdString(it.get<json::string_t>());
|
||||||
zaddresses->push_back(addr);
|
newzaddresses->push_back(addr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
delete zaddresses;
|
||||||
|
zaddresses = newzaddresses;
|
||||||
|
|
||||||
// Refresh the sent and received txs from all these z-addresses
|
// Refresh the sent and received txs from all these z-addresses
|
||||||
refreshSentZTrans();
|
refreshSentZTrans();
|
||||||
refreshReceivedZTrans(*zaddresses);
|
refreshReceivedZTrans(*zaddresses);
|
||||||
});
|
});
|
||||||
|
|
||||||
delete taddresses;
|
|
||||||
taddresses = new QList<QString>();
|
auto newtaddresses = new QList<QString>();
|
||||||
getTAddresses([=] (json reply) {
|
getTAddresses([=] (json reply) {
|
||||||
for (auto& it : reply.get<json::array_t>()) {
|
for (auto& it : reply.get<json::array_t>()) {
|
||||||
auto addr = QString::fromStdString(it.get<json::string_t>());
|
auto addr = QString::fromStdString(it.get<json::string_t>());
|
||||||
if (Settings::isTAddress(addr))
|
if (Settings::isTAddress(addr))
|
||||||
taddresses->push_back(addr);
|
newtaddresses->push_back(addr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
delete taddresses;
|
||||||
|
taddresses = newtaddresses;
|
||||||
|
|
||||||
// If there are no t Addresses, create one
|
// If there are no t Addresses, create one
|
||||||
newTaddr([=] (json reply) {
|
newTaddr([=] (json reply) {
|
||||||
// What if taddress gets deleted before this executes?
|
// What if taddress gets deleted before this executes?
|
||||||
|
|||||||
Reference in New Issue
Block a user