[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48907] branches/soc-2012-swiss_cheese/ source/gameengine/Converter/KX_BlenderSceneConverter.cpp: Cleaning up some memory leaks caused by async lib loading.

Mitchell Stokes mogurijin at gmail.com
Sat Jul 14 05:59:44 CEST 2012


Revision: 48907
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48907
Author:   moguri
Date:     2012-07-14 03:59:38 +0000 (Sat, 14 Jul 2012)
Log Message:
-----------
Cleaning up some memory leaks caused by async lib loading.

Modified Paths:
--------------
    branches/soc-2012-swiss_cheese/source/gameengine/Converter/KX_BlenderSceneConverter.cpp

Modified: branches/soc-2012-swiss_cheese/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
===================================================================
--- branches/soc-2012-swiss_cheese/source/gameengine/Converter/KX_BlenderSceneConverter.cpp	2012-07-14 03:45:04 UTC (rev 48906)
+++ branches/soc-2012-swiss_cheese/source/gameengine/Converter/KX_BlenderSceneConverter.cpp	2012-07-14 03:59:38 UTC (rev 48907)
@@ -144,10 +144,14 @@
 	int i;
 	// delete sumoshapes
 	
-	vector<pthread_t>::iterator pit = m_threadinfo->threads.begin();
-	while (pit != m_threadinfo->threads.end()) {
-		pthread_join((*pit), NULL);
-		pit++;
+	if (m_threadinfo) {
+		vector<pthread_t>::iterator pit = m_threadinfo->threads.begin();
+		while (pit != m_threadinfo->threads.end()) {
+			pthread_join((*pit), NULL);
+			pit++;
+		}
+
+		delete m_threadinfo;
 	}
 
 	int numAdtLists = m_map_blender_to_gameAdtList.size();
@@ -966,7 +970,8 @@
 			delete (*sit);
 		}
 
-		delete (*mit)->GetData();
+
+		delete merge_scenes;
 		(*mit)->SetData(NULL);
 
 		(*mit)->Finish();
@@ -996,7 +1001,7 @@
 		status->AddProgress((1.f/scenes->size())*0.9f); // We'll call conversion 90% and merging 10% for now
 	}
 
-	delete status->GetData();
+	delete scenes;
 	status->SetData(merge_scenes);
 
 	status->GetConverter()->AddScenesToMergeQueue(status);




More information about the Bf-blender-cvs mailing list