Salome HOME
Merge remote-tracking branch 'origin/master'
[modules/smesh.git] / src / SMESH_I / SMESH_Gen_i_1.cxx
index 0ae519858445d8010d3d65fe5397a65cef971250..6444617c7f744bba743461d5be8ec288fe33fe43 100644 (file)
@@ -277,6 +277,10 @@ static SALOMEDS::SObject_ptr publish(SALOMEDS::Study_ptr   theStudy,
       SO = aStudyBuilder->NewObjectToTag( theFatherObject, theTag );
       isNewSO = true;
     }
+    else
+    {
+      isInUseCaseTree = useCaseBuilder->IsUseCaseNode( SO );
+    }
   }
   else
   {
@@ -294,10 +298,10 @@ static SALOMEDS::SObject_ptr publish(SALOMEDS::Study_ptr   theStudy,
     if ( !sameIOR )
     {
       iorAttr->SetValue( objStr.in() );
-      // UnRegister() !!!
-      SALOME::GenericObj_var genObj = SALOME::GenericObj::_narrow( theIOR );
-      if ( !genObj->_is_nil() )
-        genObj->UnRegister();
+      // UnRegister() !!! --> No: random problems when meshing in parallel (yacs foreach) in distributed python scripts
+//      SALOME::GenericObj_var genObj = SALOME::GenericObj::_narrow( theIOR );
+//      if ( !genObj->_is_nil() )
+//        genObj->UnRegister();
     }
   }
 
@@ -1002,7 +1006,7 @@ bool SMESH_Gen_i::RemoveHypothesisFromShape(SALOMEDS::Study_ptr         theStudy
  * \brief Stores names of variables that WILL be passes as parameters when calling
  *        some method of a given object.
  *  \param [in] theObject - the object whose a method WILL be called with \a theParameters.
- *  \param [in] theParameters - a string contating parameters separated by ':'.
+ *  \param [in] theParameters - a string containing parameters separated by ':'.
  */
 //================================================================================
 
@@ -1017,7 +1021,7 @@ void SMESH_Gen_i::UpdateParameters(CORBA::Object_ptr theObject, const char* theP
   myLastObj.clear();
   myLastParameters.clear();
   myLastParamIndex.clear(); /* vector holding indices of virables within the string
-                               of all varibles used for theObject */ 
+                               of all variables used for theObject */ 
   int nbVars = 0;
   int pos = 0, prevPos = 0, len = strlen( theParameters );
   if ( len == 0 ) return;
@@ -1046,7 +1050,7 @@ void SMESH_Gen_i::UpdateParameters(CORBA::Object_ptr theObject, const char* theP
     return;
 
   // store
-  // (1) variable names in the string of all varibles used for theObject and
+  // (1) variable names in the string of all variables used for theObject and
   // (2) indices of found variables in myLastParamIndex.
 
   // remember theObject