From: PilzAdam Date: Fri, 17 May 2013 23:52:18 +0000 (+0200) Subject: Fix memory leak in MeshUpdateThread X-Git-Tag: 0.4.7~14^2~35 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=9397b5de083fabe2e93c55de5bf90e5c75bbe9c1;p=oweals%2Fminetest.git Fix memory leak in MeshUpdateThread --- diff --git a/src/client.cpp b/src/client.cpp index 929ed0eab..533c40ab2 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -350,6 +350,11 @@ Client::~Client() m_mesh_update_thread.setRun(false); while(m_mesh_update_thread.IsRunning()) sleep_ms(100); + while(!m_mesh_update_thread.m_queue_out.empty()) { + MeshUpdateResult r = m_mesh_update_thread.m_queue_out.pop_front(); + delete r.mesh; + } + delete m_inventory_from_server; @@ -757,6 +762,8 @@ void Client::step(float dtime) // Replace with the new mesh block->mesh = r.mesh; + } else { + delete r.mesh; } if(r.ack_block_to_server) {