]> SALOME platform Git repositories - modules/visu.git/commitdiff
Salome HOME
Fix for Bug IPAL12384:
authorenk <enk@opencascade.com>
Wed, 24 May 2006 11:12:29 +0000 (11:12 +0000)
committerenk <enk@opencascade.com>
Wed, 24 May 2006 11:12:29 +0000 (11:12 +0000)
SIGSEGV 'segmentation violatin' detected.

src/VISUGUI/VisuGUI_CutLinesDlg.cxx

index 7b6c49a718c106bfb7b4cfa99c5bc4aa9d3353af..68e343b610f2b9d6b1b796316d573f921bb06db6 100644 (file)
@@ -368,9 +368,12 @@ void VisuGUI_CutLinesDlg::deletePlanes()
   SVTK_ViewWindow* aView;
   vtkRenderer* aRend       = myPreviewActor->GetRenderer();
   vtkRenderer* aRendGlyphs = myPreviewActorGlyphs->GetRenderer();
-  if(aRend)
+  
+  vtkRenderWindow* aWnd1 = aRend->GetRenderWindow();
+  vtkRenderWindow* aWnd2 = aRendGlyphs->GetRenderWindow();
+  if(aRend && aWnd1)
     myPreviewActor->RemoveFromRender(aRend);
-  if(aRendGlyphs)
+  if(aRendGlyphs && aWnd2)
     myPreviewActorGlyphs->RemoveFromRender(aRendGlyphs);
 
 //   Bug IPAL11962: preview is still in the viewer, if viewer not active.
@@ -560,9 +563,9 @@ void VisuGUI_CutLinesDlg::updateGlyphs(bool update){
   for(int i=0; i<3; i++) aBoundCenter[i] = (bounds[i*2] + bounds[i*2+1])/2.0;
   for(int i=0; i<3; i++){ 
     if (!myAllCurvesInvertedCheck->isChecked())
-      aSecondPnt[i] = aBasePnt[i] + aDirLn[i];
+      aSecondPnt[i] = aDirLn[i];
     else
-      aSecondPnt[i] = -aBasePnt[i] - aDirLn[i];
+      aSecondPnt[i] = - aDirLn[i];
   }
   
   vtkFloatingPointType max_bound = 0;