mixer_control: don't touch mixers of disabled outputs
When an audio output device is disabled, also disable its mixer.
This commit is contained in:
@@ -26,6 +26,8 @@
|
||||
#include "output_command.h"
|
||||
#include "output_all.h"
|
||||
#include "output_internal.h"
|
||||
#include "output_plugin.h"
|
||||
#include "mixer_api.h"
|
||||
#include "idle.h"
|
||||
|
||||
bool
|
||||
@@ -48,6 +50,7 @@ bool
|
||||
audio_output_disable_index(unsigned idx)
|
||||
{
|
||||
struct audio_output *ao;
|
||||
struct mixer *mixer;
|
||||
|
||||
if (idx >= audio_output_count())
|
||||
return false;
|
||||
@@ -57,5 +60,11 @@ audio_output_disable_index(unsigned idx)
|
||||
ao->enabled = false;
|
||||
idle_add(IDLE_OUTPUT);
|
||||
|
||||
mixer = ao_plugin_get_mixer(ao->plugin, ao->data);
|
||||
if (mixer != NULL) {
|
||||
mixer_close(mixer);
|
||||
idle_add(IDLE_MIXER);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user