X-Git-Url: https://code.delx.au/pulseaudio/blobdiff_plain/8c6593dabf3253e20fead143855267570a403c9a..fa499dad06ba6558111cdef64c18f2401e803cff:/polyp/play-memchunk.c diff --git a/polyp/play-memchunk.c b/polyp/play-memchunk.c index ace8ca69..1b611db4 100644 --- a/polyp/play-memchunk.c +++ b/polyp/play-memchunk.c @@ -4,7 +4,7 @@ This file is part of polypaudio. polypaudio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published + it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. @@ -13,7 +13,7 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License + You should have received a copy of the GNU Lesser General Public License along with polypaudio; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. @@ -37,9 +37,12 @@ static void sink_input_kill(struct pa_sink_input *i) { assert(i && i->userdata); c = i->userdata; + pa_sink_input_disconnect(i); + pa_sink_input_unref(i); + pa_memblock_unref(c->memblock); pa_xfree(c); - pa_sink_input_free(i); + } static int sink_input_peek(struct pa_sink_input *i, struct pa_memchunk *chunk) { @@ -85,7 +88,7 @@ int pa_play_memchunk(struct pa_sink *sink, const char *name, const struct pa_sam if (volume <= 0) return 0; - if (!(si = pa_sink_input_new(sink, name, ss, 0))) + if (!(si = pa_sink_input_new(sink, name, ss, 0, -1))) return -1; si->volume = volume;