diff options
Diffstat (limited to 'polyp/sound-file-stream.c')
-rw-r--r-- | polyp/sound-file-stream.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/polyp/sound-file-stream.c b/polyp/sound-file-stream.c index e77ff119..60a58f47 100644 --- a/polyp/sound-file-stream.c +++ b/polyp/sound-file-stream.c @@ -45,8 +45,11 @@ struct userdata { static void free_userdata(struct userdata *u) { assert(u); - if (u->sink_input) - pa_sink_input_free(u->sink_input); + if (u->sink_input) { + pa_sink_input_disconnect(u->sink_input); + pa_sink_input_unref(u->sink_input); + } + if (u->memchunk.memblock) pa_memblock_unref(u->memchunk.memblock); if (u->sndfile) |