]> SALOME platform Git repositories - tools/install.git/commitdiff
Salome HOME
Fix a bug: Hanging up on RedHat 9 - QMutex is used to ensure that validation events...
authorvsr <vsr@opencascade.com>
Tue, 22 Feb 2005 14:33:46 +0000 (14:33 +0000)
committervsr <vsr@opencascade.com>
Tue, 22 Feb 2005 14:33:46 +0000 (14:33 +0000)
bin/SALOME_InstallWizard
src/SALOME_InstallWizard.cxx
src/globals.h
src/icons.h

index 626e8b612a91a3463002820339d0c0af1af19bcb..02035a700a72bdeeae36c804823065c9ac86c7a1 100755 (executable)
Binary files a/bin/SALOME_InstallWizard and b/bin/SALOME_InstallWizard differ
index 9a83803f0d64b2763397267427b56b4b14491755..98778c8983e736e6da426bcdc884187d72c34b9f 100644 (file)
@@ -36,6 +36,7 @@
 #include <qfile.h>
 #include <qthread.h>
 #include <qwaitcondition.h>
+#include <qmutex.h>
 
 #ifdef WNT
 #include <iostream.h>
@@ -58,7 +59,8 @@ QString tmpDirName() { return QString(  "/INSTALLWORK" ) + QString::number( getp
  *  Class for executing systen commands
  */
 // ================================================================
-QWaitCondition myWC;
+static QMutex myMutex(false);
+static QWaitCondition myWC;
 class QProcessThread: public QThread
 {
   typedef QPtrList<QCheckListItem> ItemList;
@@ -81,9 +83,11 @@ public:
       QCheckListItem* item = myItems.first();
       myCommands.pop_front();
       myItems.removeFirst();
+      myMutex.lock();
       SALOME_InstallWizard::postValidateEvent( myWizard, result, (void*)item );
       if ( hasCommands() )
-       myWC.wait();
+       myWC.wait(&myMutex);
+      myMutex.unlock();
     };
   }
 
@@ -1911,6 +1915,8 @@ void SALOME_InstallWizard::processValidateEvent( const int val, void* data )
     InstallWizard::processValidateEvent( val, data );
     return;
   }
+  myMutex.lock();
+  myMutex.unlock();
   QCheckListItem* item = (QCheckListItem*)data;
   if ( val > 0 ) {
     if ( val == 2 ) {
index 4871e97d466017cfa70aef7e889d0fe3cd9d8c88..cb6868bcc45a27bd4abc2971329e6fc3a33fd9ca 100644 (file)
@@ -1,3 +1,10 @@
+//  File      : globals.h
+//  Created   : 14/01/2005
+//  Author    : Vadim SANDLER
+//  Project   : SALOME
+//  Module    : Installation Wizard
+//  Copyright : 2004-2005 CEA
+
 #if !defined( ___GLOBALS )
 #define ___GLOBALS
 
index be61decadf112acb5f1ed8de2036241bdb9de799..ae908b8503de2250b252ebfec0ff13fcb48cd137 100644 (file)
@@ -2,9 +2,8 @@
 //  Created   : Thu Mar 27 12:01:00 2003
 //  Author    : Vadim SANDLER
 //  Project   : SALOME
-//  Module    : InstallWizard
-//  Copyright : 2003 CEA/DEN, EDF R&D
-//  $Header$ 
+//  Module    : Installation Wizard
+//  Copyright : 2004-2005 CEA
 
 #ifndef ICONS_SALOME_INSTALL_H
 #define ICONS_SALOME_INSTALL_H