From fb0f28cd7ca5383febe34b905b44f0f2bff7eff9 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Wed, 22 Jan 2014 13:46:37 -0800 Subject: [PATCH] fix LogDialog deadlock by removing unneeded mutex, closes #1624 --- interface/src/ui/LogDialog.cpp | 6 +----- interface/src/ui/LogDialog.h | 1 - 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/interface/src/ui/LogDialog.cpp b/interface/src/ui/LogDialog.cpp index b532c0fe52..474b4f034e 100644 --- a/interface/src/ui/LogDialog.cpp +++ b/interface/src/ui/LogDialog.cpp @@ -97,7 +97,7 @@ void LogDialog::initControls() { } void LogDialog::showEvent(QShowEvent*) { - connect(_logger, SIGNAL(logReceived(QString)), this, SLOT(appendLogLine(QString))); + connect(_logger, SIGNAL(logReceived(QString)), this, SLOT(appendLogLine(QString)), Qt::QueuedConnection); showLogData(); } @@ -111,11 +111,9 @@ void LogDialog::resizeEvent(QResizeEvent*) { void LogDialog::appendLogLine(QString logLine) { if (isVisible()) { - _mutex.lock(); if (logLine.contains(_searchTerm, Qt::CaseInsensitive)) { _logTextBox->appendPlainText(logLine.simplified()); } - _mutex.unlock(); _logTextBox->ensureCursorVisible(); } } @@ -140,12 +138,10 @@ void LogDialog::handleSearchTextChanged(const QString searchText) { void LogDialog::showLogData() { _logTextBox->clear(); - _mutex.lock(); QStringList _logData = _logger->getLogData(); for (int i = 0; i < _logData.size(); ++i) { appendLogLine(_logData[i]); } - _mutex.unlock(); } KeywordHighlighter::KeywordHighlighter(QTextDocument *parent) : QSyntaxHighlighter(parent), keywordFormat() { diff --git a/interface/src/ui/LogDialog.h b/interface/src/ui/LogDialog.h index c8e7441d3c..17216db0c4 100644 --- a/interface/src/ui/LogDialog.h +++ b/interface/src/ui/LogDialog.h @@ -60,7 +60,6 @@ private: QCheckBox* _extraDebuggingBox; QPushButton* _revealLogButton; QPlainTextEdit* _logTextBox; - QMutex _mutex; QString _searchTerm; KeywordHighlighter* _highlighter;