forked from qt-creator/qt-creator
Use atomic_bool and drop QMutex locking
Change-Id: I70d472b0de717467c53bbb29cc407367b7e80e7f Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -47,9 +47,7 @@ MakefileParser::~MakefileParser()
|
|||||||
|
|
||||||
bool MakefileParser::parse()
|
bool MakefileParser::parse()
|
||||||
{
|
{
|
||||||
m_mutex.lock();
|
|
||||||
m_cancel = false;
|
m_cancel = false;
|
||||||
m_mutex.unlock();
|
|
||||||
|
|
||||||
m_success = true;
|
m_success = true;
|
||||||
m_executable.clear();
|
m_executable.clear();
|
||||||
@@ -125,13 +123,11 @@ QStringList MakefileParser::cxxflags() const
|
|||||||
|
|
||||||
void MakefileParser::cancel()
|
void MakefileParser::cancel()
|
||||||
{
|
{
|
||||||
QMutexLocker locker(&m_mutex);
|
|
||||||
m_cancel = true;
|
m_cancel = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MakefileParser::isCanceled() const
|
bool MakefileParser::isCanceled() const
|
||||||
{
|
{
|
||||||
QMutexLocker locker(&m_mutex);
|
|
||||||
return m_cancel;
|
return m_cancel;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -29,12 +29,13 @@
|
|||||||
|
|
||||||
#include <projectexplorer/projectmacro.h>
|
#include <projectexplorer/projectmacro.h>
|
||||||
|
|
||||||
#include <QMutex>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <QTextStream>
|
#include <QTextStream>
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
#include <QVector>
|
#include <QVector>
|
||||||
|
|
||||||
|
#include <atomic>
|
||||||
|
|
||||||
QT_FORWARD_DECLARE_CLASS(QDir)
|
QT_FORWARD_DECLARE_CLASS(QDir)
|
||||||
|
|
||||||
namespace AutotoolsProjectManager {
|
namespace AutotoolsProjectManager {
|
||||||
@@ -264,8 +265,7 @@ private:
|
|||||||
|
|
||||||
bool m_success = false; ///< Return value for MakefileParser::parse().
|
bool m_success = false; ///< Return value for MakefileParser::parse().
|
||||||
|
|
||||||
bool m_cancel = false; ///< True, if the parsing should be cancelled.
|
std::atomic_bool m_cancel = false; ///< True, if the parsing should be cancelled.
|
||||||
mutable QMutex m_mutex; ///< Mutex to protect m_cancel.
|
|
||||||
|
|
||||||
QString m_makefile; ///< Filename of the makefile
|
QString m_makefile; ///< Filename of the makefile
|
||||||
QString m_executable; ///< Return value for MakefileParser::executable()
|
QString m_executable; ///< Return value for MakefileParser::executable()
|
||||||
|
Reference in New Issue
Block a user