]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
Issue 0020572: EDF 1150 OCC: SIGSEGV when Salome is closing after execution of a...
authorvsr <vsr@opencascade.com>
Thu, 5 Nov 2009 13:43:46 +0000 (13:43 +0000)
committervsr <vsr@opencascade.com>
Thu, 5 Nov 2009 13:43:46 +0000 (13:43 +0000)
Additional fix for GEOM - avoid undesired servant removal by Destroy()

src/GEOMBase/GEOMBase_Helper.cxx

index 1bb44f33e9c84c0abf2519c32059519734eebcfc..926868a41dbb4a167c3e44a6b04ecbfba4eb7b26 100755 (executable)
 #include <TColStd_MapOfInteger.hxx>
 #include <TCollection_AsciiString.hxx>
 
+//To disable automatic genericobj management, the following line should be commented.
+//Otherwise, it should be uncommented. Refer to KERNEL_SRC/src/SALOMEDSImpl/SALOMEDSImpl_AttributeIOR.cxx
+//#define WITHGENERICOBJ
+
 //================================================================
 // Function : getActiveView
 // Purpose  : Get active view window, returns 0 if no open study frame
@@ -833,10 +837,12 @@ bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction )
            addInStudy( obj, aName.toLatin1().constData() );
             // updateView=false
            display( obj, false );
+#ifdef WITHGENERICOBJ
            // obj has been published in study. Its refcount has been incremented.
            // It is safe to decrement its refcount
            // so that it will be destroyed when the entry in study will be removed
            obj->Destroy();
+#endif
          }
          else {
             // asv : fix of PAL6454. If publish==false, then the original shape