Merge branch 'master' into 303

Conflicts:
	src/game/WorldSocket.cpp
	src/shared/Database/DBCStructure.h
	src/shared/Database/DBCfmt.cpp
This commit is contained in:
tomrus88 2008-11-10 01:10:52 +03:00
commit 6fae544fbe
23 changed files with 280 additions and 118 deletions

View file

@ -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;
}