#define VER_LAMEXP_MINOR_LO 4
#define VER_LAMEXP_TYPE Beta
#define VER_LAMEXP_PATCH 7
-#define VER_LAMEXP_BUILD 914
+#define VER_LAMEXP_BUILD 915
///////////////////////////////////////////////////////////////////////////////
// Tool versions (minimum expected versions!)
////////////////////////////////////////////////////////////
SplashScreen::SplashScreen(QWidget *parent)
- : QFrame(parent, Qt::CustomizeWindowHint | Qt::WindowStaysOnTopHint)
+:
+ QFrame(parent, Qt::CustomizeWindowHint | Qt::WindowStaysOnTopHint)
{
//Init the dialog, from the .ui file
setupUi(this);
timer->start(30720);
//Loop while thread is still running
- while(thread->isRunning())
+ bool bStillRunning = threadStillRunning(thread);
+ while(bStillRunning)
{
loop->exec();
- if(thread->isRunning())
+ if(bStillRunning = threadStillRunning(thread))
{
- QThread::yieldCurrentThread();
- if(thread->isRunning())
- {
- qWarning("Potential deadlock in initialization thread!");
- }
+ qWarning("Potential deadlock in initialization thread!");
}
}
{
return WinSevenTaskbar::handleWinEvent(message, result);
}
+
+////////////////////////////////////////////////////////////
+// HELPER FUNCTIONS
+////////////////////////////////////////////////////////////
+
+bool SplashScreen::threadStillRunning(const QThread *thread)
+{
+ for(int i = 0; i < 128; i++)
+ {
+ if(!(thread->isRunning()))
+ {
+ return false;
+ }
+ QThread::yieldCurrentThread();
+ }
+
+ return thread->isRunning();
+}