- LocalUserList::iterator x = find(ServerInstance->Users->local_users.begin(),ServerInstance->Users->local_users.end(),this);
- if (x != ServerInstance->Users->local_users.end())
- ServerInstance->Users->local_users.erase(x);
+ // The iterator is initialized to local_users.end() in the constructor. It is
+ // overwritten in UserManager::AddUser() with the real iterator so this check
+ // is only a precaution currently.
+ if (localuseriter != ServerInstance->Users->local_users.end())
+ {
+ ServerInstance->Users->local_count--;
+ ServerInstance->Users->local_users.erase(localuseriter);
+ }