diff options
author | Robin Gareus <robin@gareus.org> | 2016-11-19 04:54:36 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-11-19 04:54:36 +0100 |
commit | 0b8a7d34291c665edd4b6251394e4f016118cfbb (patch) | |
tree | 8b8bacafcdd83ec4a83155e696ca2771ad88fbed /gtk2_ardour | |
parent | 97f81479d3879e2b6a3b38626c312626fbf84d04 (diff) |
Don't allow recursive calls to EngineDialog
OK -> start_engine() can eg. trigger an interactive plugin scan,
which in turn leaves the EngineDialog responsive. changing settings
or clicking OK again can lead to undefined behavior.
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/engine_dialog.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gtk2_ardour/engine_dialog.cc b/gtk2_ardour/engine_dialog.cc index 8a6c42fd8c..b20b56176f 100644 --- a/gtk2_ardour/engine_dialog.cc +++ b/gtk2_ardour/engine_dialog.cc @@ -466,10 +466,10 @@ EngineControl::on_response (int response_id) switch (response_id) { case RESPONSE_OK: + hide(); if (!start_engine()) { + show(); return; - } else { - hide(); } #ifdef PLATFORM_WINDOWS |