VisualStudioVersion = 12.0.31101.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LameXP", "LameXP_VS2013.vcxproj", "{00FE736A-8DB1-41B3-B915-4CD8DB09EF48}"
+ ProjectSection(ProjectDependencies) = postProject
+ {55405FE1-149F-434C-9D72-4B64348D2A08} = {55405FE1-149F-434C-9D72-4B64348D2A08}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MUtilities", "..\MUtilities\MUtilities_VS2013.vcxproj", "{55405FE1-149F-434C-9D72-4B64348D2A08}"
EndProject
#define VER_LAMEXP_MINOR_LO 1
#define VER_LAMEXP_TYPE Beta
#define VER_LAMEXP_PATCH 5
-#define VER_LAMEXP_BUILD 1616
+#define VER_LAMEXP_BUILD 1617
#define VER_LAMEXP_CONFG 1558
///////////////////////////////////////////////////////////////////////////////
*/
QScopedPointer<JobObject> AbstractTool::s_jobObject;
QMutex AbstractTool::s_jobObjMtx;
+quint64 AbstractTool::s_jobObjCnt = 0ui64;
/*
* Process Timer
* Constructor
*/
AbstractTool::AbstractTool(void)
+:
+ m_firstLaunch(true)
+
{
QMutexLocker lock(&s_jobObjMtx);
- if(s_jobObject.isNull())
+ if(s_jobObjCnt++ == 0)
{
s_jobObject.reset(new JobObject());
}
-
- m_firstLaunch = true;
}
/*
*/
AbstractTool::~AbstractTool(void)
{
+ QMutexLocker lock(&s_jobObjMtx);
+
+ if(--s_jobObjCnt == 0)
+ {
+ s_jobObject.reset(NULL);
+ }
}
/*
if(process.waitForStarted())
{
- if(s_jobObject)
+ if(!s_jobObject.isNull())
{
if(!s_jobObject->addProcessToJob(&process))
{
static QScopedPointer<JobObject> s_jobObject;
static QMutex s_jobObjMtx;
+ static quint64 s_jobObjCnt;
bool m_firstLaunch;
};