diff --git a/ChangeLog b/ChangeLog index 821365d685..73f0a22c0e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2004-01-15 Julien MOUTTE + + * sys/ximage/ximagesink.c: (gst_ximagesink_chain): + * sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): Making both of + them use the buffer free function to test how the buffer was allocated. + 2004-01-15 David Schleef * ext/esd/esdsink.c: (gst_esdsink_class_init): Remove property diff --git a/sys/ximage/ximagesink.c b/sys/ximage/ximagesink.c index bebd513815..cdfc7316d5 100644 --- a/sys/ximage/ximagesink.c +++ b/sys/ximage/ximagesink.c @@ -28,6 +28,8 @@ /* Object header */ #include "ximagesink.h" +static void gst_ximagesink_buffer_free (GstBuffer *buffer); + /* ElementFactory information */ static GstElementDetails gst_ximagesink_details = GST_ELEMENT_DETAILS ( "Video sink", @@ -729,7 +731,7 @@ gst_ximagesink_chain (GstPad *pad, GstData *data) /* If this buffer has been allocated using our buffer management we simply put the ximage which is in the PRIVATE pointer */ - if (GST_BUFFER_PRIVATE (buf)) + if (GST_BUFFER_FREE_DATA_FUNC (buf) == gst_ximagesink_buffer_free) { gst_ximagesink_ximage_put (ximagesink, GST_BUFFER_PRIVATE (buf)); } diff --git a/sys/xvimage/xvimagesink.c b/sys/xvimage/xvimagesink.c index 562a8e932f..960e51c9ea 100644 --- a/sys/xvimage/xvimagesink.c +++ b/sys/xvimage/xvimagesink.c @@ -941,7 +941,6 @@ gst_xvimagesink_chain (GstPad *pad, GstData *data) /* If this buffer has been allocated using our buffer management we simply put the ximage which is in the PRIVATE pointer */ - /* FIXME: need to check for correct xvimagesink here? */ if (GST_BUFFER_FREE_DATA_FUNC (buf) == gst_xvimagesink_buffer_free) { gst_xvimagesink_xvimage_put (xvimagesink, GST_BUFFER_PRIVATE (buf));