audioringbuffer: Reset segdone when releasing audioringbuffer

https://bugzilla.gnome.org/show_bug.cgi?id=697723
This commit is contained in:
Paul HENRYS 2013-04-10 16:38:14 +02:00 committed by Sebastian Dröge
parent 789ddf42a9
commit 587b2721c8

View file

@ -88,6 +88,8 @@ gst_audio_ring_buffer_init (GstAudioRingBuffer * ringbuffer)
ringbuffer->waiting = 0; ringbuffer->waiting = 0;
ringbuffer->empty_seg = NULL; ringbuffer->empty_seg = NULL;
ringbuffer->flushing = TRUE; ringbuffer->flushing = TRUE;
ringbuffer->segbase = 0;
ringbuffer->segdone = 0;
} }
static void static void
@ -682,6 +684,7 @@ gst_audio_ring_buffer_release (GstAudioRingBuffer * buf)
if (G_UNLIKELY (!res)) if (G_UNLIKELY (!res))
goto release_failed; goto release_failed;
g_atomic_int_set (&buf->segdone, 0);
g_free (buf->empty_seg); g_free (buf->empty_seg);
buf->empty_seg = NULL; buf->empty_seg = NULL;
gst_caps_replace (&buf->spec.caps, NULL); gst_caps_replace (&buf->spec.caps, NULL);