From 93b30364d92d53158638529aca2cbaf80074d8ad Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Mon, 9 Oct 2017 00:21:13 +0200 Subject: [PATCH] Tiny bugfix: don't waste CPU time in a dialog exec loop. --- src/lay/lay/laySaltDownloadManager.cc | 7 +++---- src/lay/lay/laySaltDownloadManager.h | 5 ++--- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/lay/lay/laySaltDownloadManager.cc b/src/lay/lay/laySaltDownloadManager.cc index 03f926da1..753324452 100644 --- a/src/lay/lay/laySaltDownloadManager.cc +++ b/src/lay/lay/laySaltDownloadManager.cc @@ -37,7 +37,7 @@ namespace lay // ---------------------------------------------------------------------------------- ConfirmationDialog::ConfirmationDialog (QWidget *parent) - : QDialog (parent), m_confirmed (false), m_cancelled (false), m_closed (false), m_file (50000, true) + : QDialog (parent), m_confirmed (false), m_cancelled (false), m_file (50000, true) { Ui::SaltManagerInstallConfirmationDialog::setupUi (this); @@ -419,9 +419,8 @@ SaltDownloadManager::execute (lay::SaltManagerDialog *parent, lay::Salt &salt) dialog->finish (); - while (! dialog->is_closed () && dialog->isVisible ()) { - QCoreApplication::processEvents (QEventLoop::AllEvents | QEventLoop::WaitForMoreEvents, 100); - } + // Show the dialog until it's closed + dialog->exec (); } else { diff --git a/src/lay/lay/laySaltDownloadManager.h b/src/lay/lay/laySaltDownloadManager.h index e1d03e744..ad2d33edb 100644 --- a/src/lay/lay/laySaltDownloadManager.h +++ b/src/lay/lay/laySaltDownloadManager.h @@ -52,7 +52,6 @@ public: bool is_confirmed () const { return m_confirmed; } bool is_cancelled () const { return m_cancelled; } - bool is_closed () const { return m_closed; } void start (); void separator (); @@ -64,10 +63,10 @@ public: private slots: void confirm_pressed () { m_confirmed = true; } void cancel_pressed () { m_cancelled = true; } - void close_pressed () { m_closed = true; } + void close_pressed () { hide (); } private: - bool m_confirmed, m_cancelled, m_closed; + bool m_confirmed, m_cancelled; lay::LogFile m_file; std::map m_items_by_name;