aboutsummaryrefslogtreecommitdiff
path: root/src/output_finish.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/output_finish.c')
-rw-r--r--src/output_finish.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/output_finish.c b/src/output_finish.c
index ac7f7e0c..e11b4367 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);
+}