diff --git a/src/client.cpp b/src/client.cpp index 6df9bc0..ac8e87f 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -174,15 +174,7 @@ void * MeshUpdateThread::Thread() }else{ MapBlock *block = m_env->getMap().getBlockNoCreateNoEx(q->p); if (block && block->mesh) { - if (q->ack_block_to_server) { - MeshUpdateResult r; - r.p = q->p; - r.mesh = NULL; - r.ack_block_to_server = true; - m_queue_out.push_back(r); - } block->mesh->generate(q->data, m_camera_offset, &block->mesh_mutex); - }else if (block) { if (q->ack_block_to_server) { MeshUpdateResult r; r.p = q->p; @@ -190,11 +182,12 @@ void * MeshUpdateThread::Thread() r.ack_block_to_server = true; m_queue_out.push_back(r); } + }else if (block) { MapBlockMesh *mesh_new = new MapBlockMesh(q->data, m_camera_offset); MeshUpdateResult r; r.p = q->p; r.mesh = mesh_new; - r.ack_block_to_server = false; + r.ack_block_to_server = q->ack_block_to_server; m_queue_out.push_back(r); } diff --git a/src/game.cpp b/src/game.cpp index 36d6e47..44e163a 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -1669,11 +1669,6 @@ void the_game( guitext_profiler->setBackgroundColor(video::SColor(80,0,0,0)); guitext_profiler->setVisible(false); - // Launch pause menu - (new GUIPauseMenu(guienv, guiroot, -1, g_gamecallback, - &g_menumgr))->drop(); - client.setFormState(true); - /* Some statistics are collected in these */ diff --git a/src/mapblock_mesh.cpp b/src/mapblock_mesh.cpp index f0f31cc..f2a98c0 100644 --- a/src/mapblock_mesh.cpp +++ b/src/mapblock_mesh.cpp @@ -643,7 +643,11 @@ void MapBlockMesh::refresh(u32 daynight_ratio) u16 mc = m_mesh->getMeshBufferCount(); for (u16 j=0; jgetMeshBuffer(j); + if (buf == 0) + continue; video::S3DVertex *vertices = (video::S3DVertex*)buf->getVertices(); + if (vertices == 0) + continue; u16 vc = buf->getVertexCount(); u32 *c = m_meshdata[j].colours.data(); for (u16 i=0; igetMeshBufferCount(); for (u16 j=0; jgetMeshBuffer(j); + if (buf == 0) + continue; video::S3DVertex *vertices = (video::S3DVertex*)buf->getVertices(); + if (vertices == 0) + continue; u16 vc = buf->getVertexCount(); for (u16 i=0; i