Salome HOME
Stabilization of the application: to avoid recomputation of invalid parameters (undo...
authormpv <mpv@opencascade.com>
Mon, 14 Sep 2015 07:32:42 +0000 (10:32 +0300)
committermpv <mpv@opencascade.com>
Mon, 14 Sep 2015 07:32:42 +0000 (10:32 +0300)
src/SketcherPrs/SketcherPrs_SymbolPrs.cpp

index 84a0f9884a4a48d848ad74cbbeb36a19aa59e62d..ee319ebc2b2aae0b4c9decee7b610b18c172e123 100644 (file)
@@ -392,6 +392,11 @@ void SketcherPrs_SymbolPrs::ComputeSelection(const Handle(SelectMgr_Selection)&
 
 void SketcherPrs_SymbolPrs::Render(const Handle(OpenGl_Workspace)& theWorkspace) const
 {
+  // do not update presentation for invalid or already removed objects: the presentation
+  // should be removed soon
+  if (!myConstraint->data().get() || !myConstraint->data()->isValid())
+    return;
+
   const OpenGl_AspectMarker* anAspectMarker = theWorkspace->AspectMarker(Standard_True);
   const Handle(OpenGl_Context)& aCtx = theWorkspace->GetGlContext();
   Handle(OpenGl_View) aView = theWorkspace->ActiveView();