Salome HOME
Merge branch 'master' of ssh://git.salome-platform.org/modules/gui
[modules/gui.git] / src / Session / SALOME_Session_Server.cxx
index 46030c5385088981c006c25ba0a85d39d6916bf6..c8b52cf4f4c4b7204bd83da04392f17d8ec3561e 100755 (executable)
@@ -68,6 +68,8 @@
 #include CORBA_SERVER_HEADER(SALOME_Session)
 #include CORBA_SERVER_HEADER(SALOMEDS)
 
+#include <time.h>
+
 #include <QDir>
 #include <QFile>
 #include <QApplication>
@@ -259,19 +261,6 @@ public:
 
   virtual bool notify( QObject* receiver, QEvent* e )
   {
-#if OCC_VERSION_LARGE < 0x06010100
-    // Disable GUI user actions while python command is executed
-    if (SUIT_Session::IsPythonExecuted()) {
-      // Disable mouse and keyboard events
-      QEvent::Type aType = e->type();
-      if (aType == QEvent::MouseButtonPress || aType == QEvent::MouseButtonRelease ||
-          aType == QEvent::MouseButtonDblClick || aType == QEvent::MouseMove ||
-          aType == QEvent::Wheel || aType == QEvent::ContextMenu ||
-          aType == QEvent::KeyPress || aType == QEvent::KeyRelease ||
-          aType == QEvent::Accel || aType == QEvent::AccelOverride)
-        return false;
-    }
-#endif
 
 #ifdef ENABLE_TESTRECORDER
     return myHandler ? myHandler->handle( receiver, e ) :
@@ -660,18 +649,28 @@ int main( int argc, char **argv )
   //PyRun_SimpleString("orb.destroy()");
 
   // Destroy the ORB:
-  MESSAGE("Explicitely destroying the ORB (hoping to kill omniORB threads ...)");
+  sleep(2);
+  //std::cout << "@@@@@ Explicitely destroying the ORB (hoping to kill omniORB threads ...)\n";
   ORB_INIT * init = SINGLETON_<ORB_INIT>::Instance();
   if (init)
     init->explicit_destroy();
+  //std::cout << "@@@@@ ORB destroyed\n";
 
   // After ORB destruction
-  PyGILState_Ensure();
   if(Py_IsInitialized())
-    Py_Finalize();
+    {
+      PyGILState_Ensure();
+      //std::cout << "@@@@@ About to PyFinalize\n";
+      Py_Finalize();
+      //std::cout << "@@@@@ DONE PyFinalize\n";
+    }
 
   if ( shutdownAll )
-    killOmniNames();
+    {
+      //std::cout << "@@@@@ About to kill omni\n";
+      killOmniNames();
+      //std::cout << "@@@@@ DONE kill omni\n";
+    }
 
   MESSAGE( "Salome_Session_Server:endofserver" );
   return result;