Possibly fixed the extremely rare PeerNotFound loop bug.
See explanation in http://2pktfkt.de/irc/minetest-delta/2011-08-22.htmlmaster
parent
7776d6228e
commit
a99450ab72
|
@ -1252,6 +1252,20 @@ void Server::AsyncRunStep()
|
|||
m_uptime.set(m_uptime.get() + dtime);
|
||||
}
|
||||
|
||||
{
|
||||
// Process connection's timeouts
|
||||
JMutexAutoLock lock2(m_con_mutex);
|
||||
ScopeProfiler sp(&g_profiler, "Server: connection timeout processing");
|
||||
m_con.RunTimeouts(dtime);
|
||||
}
|
||||
|
||||
{
|
||||
// This has to be called so that the client list gets synced
|
||||
// with the peer list of the connection
|
||||
ScopeProfiler sp(&g_profiler, "Server: peer change handling");
|
||||
handlePeerChanges();
|
||||
}
|
||||
|
||||
/*
|
||||
Update m_time_of_day and overall game time
|
||||
*/
|
||||
|
@ -1294,20 +1308,6 @@ void Server::AsyncRunStep()
|
|||
}
|
||||
}
|
||||
|
||||
{
|
||||
// Process connection's timeouts
|
||||
JMutexAutoLock lock2(m_con_mutex);
|
||||
ScopeProfiler sp(&g_profiler, "Server: connection timeout processing");
|
||||
m_con.RunTimeouts(dtime);
|
||||
}
|
||||
|
||||
{
|
||||
// This has to be called so that the client list gets synced
|
||||
// with the peer list of the connection
|
||||
ScopeProfiler sp(&g_profiler, "Server: peer change handling");
|
||||
handlePeerChanges();
|
||||
}
|
||||
|
||||
{
|
||||
JMutexAutoLock lock(m_env_mutex);
|
||||
// Step environment
|
||||
|
|
Loading…
Reference in New Issue