mirror of
https://github.com/mangosfour/server.git
synced 2025-12-15 01:37:00 +00:00
Fix auth login queue.
This commit is contained in:
parent
ace2d4815e
commit
1346f394be
1 changed files with 9 additions and 8 deletions
|
|
@ -198,13 +198,16 @@ World::AddSession_ (WorldSession* s)
|
|||
return;
|
||||
}
|
||||
|
||||
WorldSession* old = m_sessions[s->GetAccountId ()];
|
||||
m_sessions[s->GetAccountId ()] = s;
|
||||
|
||||
// if session already exist, prepare to it deleting at next world update
|
||||
// NOTE - KickPlayer() should be called on "old" in RemoveSession()
|
||||
if (old)
|
||||
m_kicked_sessions.insert (old);
|
||||
{
|
||||
SessionMap::const_iterator old = m_sessions.find(s->GetAccountId ());
|
||||
|
||||
if(old != m_sessions.end())
|
||||
m_kicked_sessions.insert (old->second);
|
||||
}
|
||||
|
||||
m_sessions[s->GetAccountId ()] = s;
|
||||
|
||||
uint32 Sessions = GetActiveAndQueuedSessionCount ();
|
||||
uint32 pLimit = GetPlayerAmountLimit ();
|
||||
|
|
@ -286,9 +289,7 @@ void World::RemoveQueuedPlayer(WorldSession* sess)
|
|||
{
|
||||
if(*iter==sess)
|
||||
{
|
||||
Queue::iterator iter2 = iter;
|
||||
++iter;
|
||||
m_QueuedPlayer.erase(iter2);
|
||||
iter = m_QueuedPlayer.erase(iter);
|
||||
decrease_session = false; // removing queued session
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue