]> code.delx.au - pulseaudio/blobdiff - polyp/play-memchunk.c
Make the whole stuff LGPL only
[pulseaudio] / polyp / play-memchunk.c
index ace8ca698fcb19618502067e0fbaf97f043c4d5d..1b611db4cdf2a3f238e16d9d165775a21169bffc 100644 (file)
@@ -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;