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);