Salome HOME
Memory leaks
authoreap <eap@opencascade.com>
Thu, 30 Jun 2016 11:38:14 +0000 (14:38 +0300)
committereap <eap@opencascade.com>
Thu, 30 Jun 2016 11:38:14 +0000 (14:38 +0300)
src/GEOM_I/GEOM_Gen_i.cc
src/OBJECT/GEOM_Actor.cxx

index bb69e6fd149f563bb5ec15eeab62b782a49f9dc1..5e1710bfa9960d5e5451cd29391e5bdaea36ef0a 100644 (file)
@@ -225,7 +225,7 @@ SALOMEDS::SObject_ptr GEOM_Gen_i::PublishInStudy(SALOMEDS::Study_ptr   theStudy,
 
   SALOMEDS::GenericAttribute_var anAttr;
   SALOMEDS::StudyBuilder_var     aStudyBuilder = theStudy->NewBuilder();
-  SALOMEDS::UseCaseBuilder_var   useCaseBuilder = theStudy->GetUseCaseBuilder();
+  SALOMEDS::UseCaseBuilder_wrap  useCaseBuilder = theStudy->GetUseCaseBuilder();
 
   SALOMEDS::SComponent_var       aFather = theStudy->FindComponent("GEOM");
   if (aFather->_is_nil()) {
@@ -2809,8 +2809,9 @@ char* GEOM_Gen_i::getObjectInfo(CORBA::Long studyId, const char* entry)
     }
   }
 
-  char* anInfo = new char[strlen("Module ") + strlen(ComponentDataType()) + strlen(", ") + strlen(aTypeInfo) + 3];
-  sprintf(anInfo, "Module %s, %s", ComponentDataType(), aTypeInfo);
+  CORBA::String_var compType = ComponentDataType();
+  char* anInfo = new char[strlen("Module ") + strlen(compType.in()) + strlen(", ") + strlen(aTypeInfo) + 3];
+  sprintf(anInfo, "Module %s, %s", compType.in(), aTypeInfo);
 
   char* ret = CORBA::string_dup(anInfo);
   delete [] anInfo;
index 5bd74274f99515cef4792b820146fe098613feb6..3104e50078b22a9428e88dbc4b56b64af9b8505b 100644 (file)
@@ -217,6 +217,7 @@ GEOM_Actor::~GEOM_Actor()
 #ifdef MYDEBUG
   MESSAGE (this<< " ~GEOM_Actor::GEOM_Actor");
 #endif
+  myTextActor->Delete();
   myHighlightProp->Delete();
   myPreHighlightProp->Delete();
   myShadingFaceProp->Delete();