try to fix cloud again

This commit is contained in:
2024-06-01 22:27:39 +03:00
parent af4b718053
commit d46b5e008a
8 changed files with 24 additions and 18 deletions

View File

@@ -59,7 +59,7 @@ void DispatcherServer::cleanClients() {
if (!index_c_servers.contains(c) && !index_c_clients.contains(c)) {
if (!rm_clients.contains(c)) rm_clients << c;
} else
rm_clients.removeAll(c);
rm_clients.remove(c);
}
auto ss = c_servers.values();
for (auto c: ss) {
@@ -76,7 +76,7 @@ void DispatcherServer::cleanClients() {
index_c_clients.remove(csc);
c->removeClient(csc);
csc->close();
if (!rmrf_clients.contains(csc)) rmrf_clients << csc;
rmrf_clients << csc;
}
c_servers.remove(c->serverUUID());
index_c_servers.remove(c->getConnection());
@@ -86,7 +86,7 @@ void DispatcherServer::cleanClients() {
}
for (auto c: rm_clients) {
if (clients.contains(c)) {
if (!rmrf_clients.contains(c)) rmrf_clients << c;
rmrf_clients << c;
}
}
for (auto c: rmrf_clients) {
@@ -96,7 +96,7 @@ void DispatcherServer::cleanClients() {
index_c_servers.remove(c);
}
index_c_clients.remove(c);
rm_clients.removeAll(c);
rm_clients.remove(c);
}
}
@@ -201,7 +201,7 @@ void DispatcherServer::disconnectClient(DispatcherClient * client) {
}
piCoutObj << "remove ..." << client->clientId();
clients.removeAll(client);
rm_clients.removeAll(client);
rm_clients.remove(client);
CloudServer * cs = index_c_servers.value(client, nullptr);
if (cs) {
piCoutObj << "remove Server" << client->clientId();
@@ -210,11 +210,11 @@ void DispatcherServer::disconnectClient(DispatcherClient * client) {
for (auto csc: cscv) {
clients.removeAll(csc);
index_c_clients.remove(csc);
if (!rmrf_clients.contains(csc)) rmrf_clients << csc;
rmrf_clients << csc;
}
c_servers.remove(cs->serverUUID());
index_c_servers.remove(client);
if (!rmrf_servers.contains(cs)) rmrf_servers << cs;
rmrf_servers << cs;
}
CloudServer * cc = index_c_clients.value(client, nullptr);
if (cc) {
@@ -223,7 +223,7 @@ void DispatcherServer::disconnectClient(DispatcherClient * client) {
index_c_clients.remove(client);
}
// client->close();
if (!rmrf_clients.contains(client)) rmrf_clients << client;
rmrf_clients << client;
piCoutObj << "remove done" << client->clientId();
}