diff --git a/kdevplatform/language/backgroundparser/backgroundparser.cpp b/kdevplatform/language/backgroundparser/backgroundparser.cpp --- a/kdevplatform/language/backgroundparser/backgroundparser.cpp +++ b/kdevplatform/language/backgroundparser/backgroundparser.cpp @@ -435,14 +435,17 @@ } } + bool isSuspended() const + { + return m_weaver.state()->stateId() == ThreadWeaver::Suspended || + m_weaver.state()->stateId() == ThreadWeaver::Suspending; + } + void suspend() { qCDebug(LANGUAGE) << "Suspending background parser"; - bool s = m_weaver.state()->stateId() == ThreadWeaver::Suspended || - m_weaver.state()->stateId() == ThreadWeaver::Suspending; - - if (s) { // Already suspending + if (isSuspended()) { // Already suspending qCWarning(LANGUAGE) << "Already suspended or suspending"; return; } @@ -453,10 +456,7 @@ void resume() { - bool s = m_weaver.state()->stateId() == ThreadWeaver::Suspended || - m_weaver.state()->stateId() == ThreadWeaver::Suspending; - - if (m_timer.isActive() && !s) { // Not suspending + if (m_timer.isActive() && !isSuspended()) { // Not suspended return; }