← Back to team overview

yade-dev team mailing list archive

[svn] r1781 - in trunk: core/containers pkg/common/Engine/StandAloneEngine

 

Author: eudoxos
Date: 2009-05-25 08:29:19 +0200 (Mon, 25 May 2009)
New Revision: 1781

Modified:
   trunk/core/containers/InteractionHashMap.cpp
   trunk/core/containers/InteractionVecMap.cpp
   trunk/pkg/common/Engine/StandAloneEngine/InsertionSortCollider.cpp
Log:
Solve the cause of nonexistent interactions being deleted (after O.interactions.clear()). Make warning fatal error again.


Modified: trunk/core/containers/InteractionHashMap.cpp
===================================================================
--- trunk/core/containers/InteractionHashMap.cpp	2009-05-24 20:28:22 UTC (rev 1780)
+++ trunk/core/containers/InteractionHashMap.cpp	2009-05-25 06:29:19 UTC (rev 1781)
@@ -91,6 +91,7 @@
 	boost::mutex::scoped_lock lock(drawloopmutex);
 
 	interactions.clear();
+	pendingErase.clear();
 }
 
 

Modified: trunk/core/containers/InteractionVecMap.cpp
===================================================================
--- trunk/core/containers/InteractionVecMap.cpp	2009-05-24 20:28:22 UTC (rev 1780)
+++ trunk/core/containers/InteractionVecMap.cpp	2009-05-25 06:29:19 UTC (rev 1781)
@@ -112,6 +112,7 @@
 
 	vecmap.clear();
 	interactions.clear();
+	pendingErase.clear();
 	currentSize=0;
 }
 

Modified: trunk/pkg/common/Engine/StandAloneEngine/InsertionSortCollider.cpp
===================================================================
--- trunk/pkg/common/Engine/StandAloneEngine/InsertionSortCollider.cpp	2009-05-24 20:28:22 UTC (rev 1780)
+++ trunk/pkg/common/Engine/StandAloneEngine/InsertionSortCollider.cpp	2009-05-25 06:29:19 UTC (rev 1781)
@@ -116,7 +116,7 @@
 		else
 		{
 			const shared_ptr<Interaction>& I=interactions->find(p[0],p[1]);
-			if(!I){ LOG_WARN("Requested deletion of a non-existent interaction #"<<p[0]<<"+#"<<p[1]<<"?!"); /* LOG_FATAL(…); throw; */ }
+			if(!I){ LOG_FATAL("Requested deletion of a non-existent interaction #"<<p[0]<<"+#"<<p[1]<<"?!"); throw; }
 			I->reset();
 		}
 	}