This commit is contained in:
aozhiwei 2020-06-17 10:10:09 +08:00
parent b02b699a90
commit 8342803cc9

View File

@ -253,19 +253,26 @@ SvrNode* SvrMgr::GetNodeBySocket(int socket_handle)
return itr != socket_hash_.end() ? itr->second : nullptr;
}
void SvrMgr::RemoveNode(SvrNode* node)
void SvrMgr::RemoveNode(SvrNode* svr_node)
{
{
for (size_t i = 0; i < node_sorted_list_.size(); ++i) {
if (node_sorted_list_[i] == node) {
if (node_sorted_list_[i] == svr_node) {
node_sorted_list_.erase(node_sorted_list_.begin() + i);
break;
}
}
}
{
node_key_hash_.erase(node->key);
socket_hash_.erase(node->socket_handle);
struct Friend *node, *tmp;
list_for_each_entry_safe(node, tmp, &svr_node->human_list, human_entry) {
list_del_init(&node->human_entry);
node->svr_node = nullptr;
}
}
delete node;
{
node_key_hash_.erase(svr_node->key);
socket_hash_.erase(svr_node->socket_handle);
}
delete svr_node;
}