From b6c12d2aa3f7f3f0faca86a0b20904e309c15179 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sat, 1 Sep 2012 18:32:15 +0300 Subject: [PATCH] Fix github issue #224 --- src/server.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/server.cpp b/src/server.cpp index ba99f4707..2da9cbe24 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -442,9 +442,12 @@ void RemoteClient::GetNextBlocks(Server *server, float dtime, m_nearest_unsent_reset_timer += dtime; if(m_nothing_to_send_pause_timer >= 0) - { return; - } + + Player *player = server->m_env->getPlayer(peer_id); + // This can happen sometimes; clients and players are not in perfect sync. + if(player == NULL) + return; // Won't send anything if already sending if(m_blocks_sending.size() >= g_settings->getU16 @@ -456,10 +459,6 @@ void RemoteClient::GetNextBlocks(Server *server, float dtime, //TimeTaker timer("RemoteClient::GetNextBlocks"); - Player *player = server->m_env->getPlayer(peer_id); - - assert(player != NULL); - v3f playerpos = player->getPosition(); v3f playerspeed = player->getSpeed(); v3f playerspeeddir(0,0,0);