Salome HOME
Show the desktop is maximized at first start
[modules/gui.git] / src / SalomeApp / SalomeApp_Study.cxx
index bd38efc32facd226b34673be5346d6e39ae9d866..f735c66588d85de553102d942749273fd8f15635 100644 (file)
 
 SalomeApp_Study::SalomeApp_Study( SUIT_Application* app )
 : CAM_Study( app )
-{}  
-
+{
+}  
 
 SalomeApp_Study::~SalomeApp_Study()
 {
-  closeDocument();
 }
 
 int SalomeApp_Study::id() const
@@ -188,9 +187,13 @@ void SalomeApp_Study::closeDocument()
   emit closed( this );
 
   // close SALOMEDS document
-  SalomeApp_Application::studyMgr()->Close( studyDS() );
-  SALOMEDSClient_Study* aStudy = NULL;
-  setStudyDS( _PTR(Study)(aStudy) );
+  _PTR(Study) studyPtr = studyDS();
+  if ( studyPtr.get() )
+  {
+    SalomeApp_Application::studyMgr()->Close( studyPtr );
+    SALOMEDSClient_Study* aStudy = 0;
+    setStudyDS( _PTR(Study)(aStudy) );
+  }
 
   CAM_Study::closeDocument();
 }
@@ -255,7 +258,7 @@ void SalomeApp_Study::dataModelInserted (const CAM_DataModel* dm)
         aComp = aBuilder->NewComponent(dm->module()->name());
 
         // Set default engine IOR
-        aBuilder->DefineComponentInstance(aComp, SalomeApp_Application::defaultEngineIOR());
+        aBuilder->DefineComponentInstance(aComp, SalomeApp_Application::defaultEngineIOR().latin1());
       }
     }
   }