At Thu, 18 Jun 2009 14:55:21 +0100 (BST), Troy Moure wrote: > > Just cork or uncork the stream to pause or unpause it. > > Signed-off-by: Troy Moure <twmoure@xxxxxxxxx> Applied now. Thanks! Takashi > --- > On Wed, 17 Jun 2009, Lennart Poettering wrote: > > > Looks mostly good to me, but: > > > ... > > > > pa_stream_cork() will return a pa_operation object on success. The > > least you need to do is call pa_operation_unref() on it, which you can > > safely do right-away. Otherwise this will leak memory. > > > > Lennart > > Thanks, Lennart, for looking at the first verson I sent. I've added a > call to pa_operation_unref() as you suggested. > > pulse/pcm_pulse.c | 25 +++++++++++++++++++++++++ > 1 files changed, 25 insertions(+), 0 deletions(-) > > diff --git a/pulse/pcm_pulse.c b/pulse/pcm_pulse.c > index db8d1e1..c276839 100644 > --- a/pulse/pcm_pulse.c > +++ b/pulse/pcm_pulse.c > @@ -739,6 +739,30 @@ static int pulse_close(snd_pcm_ioplug_t * io) > return 0; > } > > +static int pulse_pause(snd_pcm_ioplug_t * io, int enable) > +{ > + snd_pcm_pulse_t *pcm = io->private_data; > + int err = 0; > + > + assert (pcm); > + assert (pcm->p); > + > + pa_threaded_mainloop_lock(pcm->p->mainloop); > + > + if (pcm->stream) { > + pa_operation *o; > + o = pa_stream_cork(pcm->stream, enable, NULL, NULL); > + if (o) > + pa_operation_unref(o); > + else > + err = -EIO; > + } > + > + pa_threaded_mainloop_unlock(pcm->p->mainloop); > + > + return err; > +} > + > static const snd_pcm_ioplug_callback_t pulse_playback_callback = { > .start = pulse_start, > .stop = pulse_stop, > @@ -750,6 +774,7 @@ static const snd_pcm_ioplug_callback_t pulse_playback_callback = { > .prepare = pulse_prepare, > .hw_params = pulse_hw_params, > .close = pulse_close, > + .pause = pulse_pause > }; > > > -- > 1.6.2.2 > > > > > > > > > -- > > Lennart Poettering Red Hat, Inc. > > lennart [at] poettering [dot] net > > http://0pointer.net/lennart/ GnuPG 0x1A015CC4 > > > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel