1
This commit is contained in:
parent
b02b699a90
commit
8342803cc9
@ -253,19 +253,26 @@ SvrNode* SvrMgr::GetNodeBySocket(int socket_handle)
|
|||||||
return itr != socket_hash_.end() ? itr->second : nullptr;
|
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) {
|
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);
|
node_sorted_list_.erase(node_sorted_list_.begin() + i);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
node_key_hash_.erase(node->key);
|
struct Friend *node, *tmp;
|
||||||
socket_hash_.erase(node->socket_handle);
|
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;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user