summaryrefslogtreecommitdiffstats
path: root/src/analyzer/analyzerqueue.cpp
diff options
context:
space:
mode:
authorUwe Klotz <uwe_klotz@web.de>2017-06-30 00:19:12 +0200
committerUwe Klotz <uwe_klotz@web.de>2017-06-30 00:19:12 +0200
commit4145069213ec1a56ed4a3fadfce76839e3c61bea (patch)
tree01a39b6b971fadd963e42c75c8490fb90aeb452a /src/analyzer/analyzerqueue.cpp
parent049aeb7930a724003c532c1ea759aac8c998a524 (diff)
Avoid manual lock/unlock
Diffstat (limited to 'src/analyzer/analyzerqueue.cpp')
-rw-r--r--src/analyzer/analyzerqueue.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/analyzer/analyzerqueue.cpp b/src/analyzer/analyzerqueue.cpp
index 6284d0b863..1cd3bbb321 100644
--- a/src/analyzer/analyzerqueue.cpp
+++ b/src/analyzer/analyzerqueue.cpp
@@ -358,9 +358,7 @@ void AnalyzerQueue::execThread() {
}
}
- m_qm.lock();
- m_queue_size = m_tioq.size();
- m_qm.unlock();
+ updateSize();
if (processTrack) {
emitUpdateProgress(nextTrack, 0);
@@ -399,14 +397,17 @@ void AnalyzerQueue::execThread() {
}
void AnalyzerQueue::emptyCheck() {
- m_qm.lock();
- m_queue_size = m_tioq.size();
- m_qm.unlock();
+ updateSize();
if (m_queue_size == 0) {
emit(queueEmpty()); // emit asynchrony for no deadlock
}
}
+void AnalyzerQueue::updateSize() {
+ QMutexLocker locked(&m_qm);
+ m_queue_size = m_tioq.size();
+}
+
// This is called from the AnalyzerQueue thread
void AnalyzerQueue::emitUpdateProgress(TrackPointer track, int progress) {
if (!m_exit) {