Salome HOME
Fix regression (SIGSEGV) caused by improvement 0022099
authorvsr <vsr@opencascade.com>
Mon, 27 May 2013 14:50:33 +0000 (14:50 +0000)
committervsr <vsr@opencascade.com>
Mon, 27 May 2013 14:50:33 +0000 (14:50 +0000)
src/SMESHGUI/SMESHGUI_RotationDlg.cxx
src/SMESHGUI/SMESHGUI_ScaleDlg.cxx
src/SMESHGUI/SMESHGUI_SymmetryDlg.cxx
src/SMESHGUI/SMESHGUI_TranslationDlg.cxx

index 4c495d65e24c83a390e483210df7bf0e32fc6ba7..c451a29c4653085edb1a164a6f716bb822fc1410 100644 (file)
@@ -525,8 +525,10 @@ bool SMESHGUI_RotationDlg::ClickOnApply()
     } catch (...) {
     }
 
-    for ( int i = 0; i < myMeshes.count(); i++ ) 
-      SMESH::Update( (SMESH::FindActorByObject( myMeshes[i] ))->getIO(), true );
+    for ( int i = 0; i < myObjects.count(); i++ ) {
+      SMESH_Actor* actor = SMESH::FindActorByObject( myObjects[i] );
+      if ( actor ) SMESH::Update( actor->getIO(), true );
+    }
    
     if ( ( MakeGroupsCheck->isEnabled() && MakeGroupsCheck->isChecked() ) ||
          actionButton == MAKE_MESH_BUTTON ) {
index 859c5a7838fd6e672f716743953af926e9e2c40e..ef39d43731cee40668d2dcab5a34809309833221 100644 (file)
@@ -564,8 +564,10 @@ bool SMESHGUI_ScaleDlg::ClickOnApply()
     } catch (...) {
     }
 
-    for ( int i = 0; i < myMeshes.count(); i++ )
-      SMESH::Update( (SMESH::FindActorByObject( myMeshes[i] ))->getIO(), true );
+    for ( int i = 0; i < myObjects.count(); i++ ) {
+      SMESH_Actor* actor = SMESH::FindActorByObject( myObjects[i] );
+      if ( actor ) SMESH::Update( actor->getIO(), true );
+    }
 
     if ( ( MakeGroupsCheck->isEnabled() && MakeGroupsCheck->isChecked() ) ||
          actionButton == MAKE_MESH_BUTTON ) {
index 64d335709298e9442f21d230357b2d4b4a4c1ab5..3dd0cadc17b3d22f34d884be9ecda80fb1402252 100644 (file)
@@ -583,8 +583,10 @@ bool SMESHGUI_SymmetryDlg::ClickOnApply()
     } catch (...) {
     }
 
-    for ( int i = 0; i < myMeshes.count(); i++ )
-      SMESH::Update( (SMESH::FindActorByObject( myMeshes[i] ))->getIO(), true );
+    for ( int i = 0; i < myObjects.count(); i++ ) {
+      SMESH_Actor* actor = SMESH::FindActorByObject( myObjects[i] );
+      if ( actor ) SMESH::Update( actor->getIO(), true );
+    }
 
     if ( ( MakeGroupsCheck->isEnabled() && MakeGroupsCheck->isChecked() ) ||
          actionButton == MAKE_MESH_BUTTON ) {
index ca047bcb8e591d56cd132939e8e216615fb8959c..1abc292e4d407878da371ac1b7bc5aabe3be2d7b 100644 (file)
@@ -592,8 +592,10 @@ bool SMESHGUI_TranslationDlg::ClickOnApply()
     } catch (...) {
     }
 
-    for ( int i = 0; i < myMeshes.count(); i++ )
-      SMESH::Update( (SMESH::FindActorByObject( myMeshes[i] ))->getIO(), true );
+    for ( int i = 0; i < myObjects.count(); i++ ) {
+      SMESH_Actor* actor = SMESH::FindActorByObject( myObjects[i] );
+      if ( actor ) SMESH::Update( actor->getIO(), true );
+    }
 
     if ( ( MakeGroupsCheck->isEnabled() && MakeGroupsCheck->isChecked() ) ||
          actionButton == MAKE_MESH_BUTTON ) {