]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/mesh.cpp
Don't leak textures all over the place
[dragonfireclient.git] / src / mesh.cpp
index d0d8b0a6ed83133b81d8a0648e1c63bb95ab06fb..b9ec82e18f64f5123c62dc2485567e6e40531213 100644 (file)
@@ -3,16 +3,16 @@ Minetest-c55
 Copyright (C) 2010-2011 celeron55, Perttu Ahola <celeron55@gmail.com>
 
 This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 2.1 of the License, or
 (at your option) any later version.
 
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
+GNU Lesser General Public License for more details.
 
-You should have received a copy of the GNU General Public License along
+You should have received a copy of the GNU Lesser General Public License along
 with this program; if not, write to the Free Software Foundation, Inc.,
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */
@@ -433,6 +433,9 @@ video::ITexture *generateTextureFromMesh(scene::IMesh *mesh,
        }
 
        // Create render target texture
+       video::ITexture *oldtexture = driver->findTexture(texture_name.c_str());
+       if(oldtexture)
+               driver->removeTexture(oldtexture);
        video::ITexture *rtt = driver->addRenderTargetTexture(
                        dim, texture_name.c_str(), video::ECF_A8R8G8B8);
        if(rtt == NULL)