From 9397b5de083fabe2e93c55de5bf90e5c75bbe9c1 Mon Sep 17 00:00:00 2001 From: PilzAdam Date: Sat, 18 May 2013 01:52:18 +0200 Subject: [PATCH] Fix memory leak in MeshUpdateThread --- src/client.cpp | 7 +++++++ 1 file changed, 7 insertions(+) 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) {