aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--src/mixer_control.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 3ce6b8403..b375eefd7 100644
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,7 @@ ver 0.15.7 (2009/??/??)
- id3: fix ID3v1 charset conversion
* decoders:
- ffmpeg: don't try to force stereo
+* mixer: explicitly close all mixers on shutdown
* mapper: fix memory leak when playlist_directory is not set
* mapper: apply filesystem_charset to playlists
* command: verify playlist name in the "rm" command
diff --git a/src/mixer_control.c b/src/mixer_control.c
index a17885935..e19b82d65 100644
--- a/src/mixer_control.c
+++ b/src/mixer_control.c
@@ -62,6 +62,10 @@ mixer_free(struct mixer *mixer)
assert(mixer->plugin != NULL);
assert(mixer->mutex != NULL);
+ /* mixers with the "global" flag set might still be open at
+ this point (see mixer_auto_close()) */
+ mixer_close(mixer);
+
g_mutex_free(mixer->mutex);
mixer->plugin->finish(mixer);