Salome HOME
Salome Forum http://www.salome-platform.org/forum/forum_10/350978231
authoreap <eap@opencascade.com>
Mon, 3 Sep 2012 08:00:12 +0000 (08:00 +0000)
committereap <eap@opencascade.com>
Mon, 3 Sep 2012 08:00:12 +0000 (08:00 +0000)
Clear AddHypothesis(geom,hyp) command when RemoveHypothesis(geom,hyp)
encounters iff both geom and hyp are same

src/SMESH_I/SMESH_2smeshpy.cxx

index 0b853211805024df9f527251a92fbfb767c16ab5..aad25100764a0c61ce2473107771e0074dc4a9f5 100644 (file)
@@ -1539,7 +1539,8 @@ void _pyMesh::Process( const Handle(_pyCommand)& theCommand )
   // ----------------------------------------------------------------------
   else if ( method == "RemoveHypothesis" ) // (geom, hyp)
   {
-    _pyID hypID = theCommand->GetArg( 2 );
+    _pyID hypID  = theCommand->GetArg( 2 );
+    _pyID geomID = theCommand->GetArg( 1 );
 
     // check if this mesh still has corresponding addition command
     bool hasAddCmd = false;
@@ -1547,7 +1548,8 @@ void _pyMesh::Process( const Handle(_pyCommand)& theCommand )
     while ( cmd != myAddHypCmds.end() )
     {
       // AddHypothesis(geom, hyp)
-      if ( hypID == (*cmd)->GetArg( 2 )) { // erase both (add and remove) commands
+      if ( hypID  == (*cmd)->GetArg( 2 ) &&
+           geomID == (*cmd)->GetArg( 1 )) { // erase both (add and remove) commands
         theCommand->Clear();
         (*cmd)->Clear();
         cmd = myAddHypCmds.erase( cmd );