From ce901f4c4ca97dee5ab0a3a0d3e14cf7f1cf0154 Mon Sep 17 00:00:00 2001
From: kwolekr <kwolekr@minetest.net>
Date: Fri, 12 Apr 2013 17:20:05 -0400
Subject: [PATCH] Fix double free, null texture drop

---
 src/emerge.cpp | 3 ---
 src/tile.cpp   | 3 ++-
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/emerge.cpp b/src/emerge.cpp
index 9d3f94d48..049b3cc12 100644
--- a/src/emerge.cpp
+++ b/src/emerge.cpp
@@ -97,9 +97,6 @@ EmergeManager::~EmergeManager() {
 		delete mapgen[i];
 	}
 	emergethread.clear();
-
-	for (unsigned int i = 0; i < mapgen.size(); i++)
-		delete mapgen[i];
 	mapgen.clear();
 
 	for (unsigned int i = 0; i < ores.size(); i++)
diff --git a/src/tile.cpp b/src/tile.cpp
index 3bfb4bb88..39f47962e 100644
--- a/src/tile.cpp
+++ b/src/tile.cpp
@@ -480,7 +480,8 @@ TextureSource::~TextureSource()
 			driver->removeTexture(t);
 
 		//cleanup source image
-		iter->atlas_img->drop();
+		if (iter->atlas_img)
+			iter->atlas_img->drop();
 	}
 	m_atlaspointer_cache.clear();
 
-- 
GitLab