diff options
Diffstat (limited to 'src/output_finish.c')
-rw-r--r-- | src/output_finish.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/output_finish.c b/src/output_finish.c index ac7f7e0c2..e11b43675 100644 --- a/src/output_finish.c +++ b/src/output_finish.c @@ -26,7 +26,7 @@ #include <assert.h> void -audio_output_destruct(struct audio_output *ao) +ao_base_finish(struct audio_output *ao) { assert(!ao->open); assert(ao->fail_timer == NULL); @@ -35,8 +35,6 @@ audio_output_destruct(struct audio_output *ao) if (ao->mixer != NULL) mixer_free(ao->mixer); - ao_plugin_finish(ao->plugin, ao->data); - g_cond_free(ao->cond); g_mutex_free(ao->mutex); @@ -50,3 +48,13 @@ audio_output_destruct(struct audio_output *ao) pcm_buffer_deinit(&ao->cross_fade_buffer); } + +void +audio_output_free(struct audio_output *ao) +{ + assert(!ao->open); + assert(ao->fail_timer == NULL); + assert(ao->thread == NULL); + + ao_plugin_finish(ao); +} |