diff options
author | Robin Gareus <robin@gareus.org> | 2018-11-11 18:50:01 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2018-11-11 18:50:01 +0100 |
commit | 38301c808c2b60ac1b78f097f078964dfde84f7e (patch) | |
tree | 607b3ab7cfcd9537367140076df5bb04f597410d /gtk2_ardour/engine_dialog.cc | |
parent | 5396385b955accc3a236886ba323d6328e8f4cc2 (diff) |
Fix sample-rate override when changing backends or devices
This indirectly honors session_loaded() and prevents that restoring
engine-state can change the sample-rate dropdown when a session is loaded.
Diffstat (limited to 'gtk2_ardour/engine_dialog.cc')
-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 92a85a3a2a..f82f45bce7 100644 --- a/gtk2_ardour/engine_dialog.cc +++ b/gtk2_ardour/engine_dialog.cc @@ -1874,7 +1874,7 @@ EngineControl::maybe_display_saved_state () DEBUG_ECONTROL ("Restoring saved state"); PBD::Unwinder<uint32_t> protect_ignore_changes (ignore_changes, ignore_changes + 1); - if (!_desired_sample_rate) { + if (0 == _desired_sample_rate && sample_rate_combo.get_sensitive ()) { sample_rate_combo.set_active_text (rate_as_string (state->sample_rate)); } set_active_text_if_present (buffer_size_combo, bufsize_as_string (state->buffer_size)); @@ -2199,7 +2199,7 @@ EngineControl::set_current_state (const State& state) device_combo.set_active_text (state->device); input_device_combo.set_active_text (state->input_device); output_device_combo.set_active_text (state->output_device); - if (!_desired_sample_rate) { + if (0 == _desired_sample_rate && sample_rate_combo.get_sensitive ()) { sample_rate_combo.set_active_text (rate_as_string (state->sample_rate)); } set_active_text_if_present (buffer_size_combo, bufsize_as_string (state->buffer_size)); |