sys/: Fixing the direct put buffers detection. I prefer checking GST_BUFFER_PRIVATE than the free_func.

Original commit message from CVS:
2004-01-12  Julien MOUTTE <julien@moutte.net>

* sys/ximage/ximagesink.c: (gst_ximagesink_chain):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): Fixing the
direct put buffers detection. I prefer checking GST_BUFFER_PRIVATE
than the free_func.
This commit is contained in:
Julien Moutte 2004-01-12 14:40:53 +00:00
parent 2d20b68b76
commit 3031f4ae35
3 changed files with 9 additions and 8 deletions

View file

@ -1,3 +1,10 @@
2004-01-12 Julien MOUTTE <julien@moutte.net>
* sys/ximage/ximagesink.c: (gst_ximagesink_chain):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain): Fixing the
direct put buffers detection. I prefer checking GST_BUFFER_PRIVATE
than the free_func.
2004-01-12 Thomas Vander Stichele <thomas at apestaart dot org> 2004-01-12 Thomas Vander Stichele <thomas at apestaart dot org>
* sys/oss/gstossaudio.c: (plugin_init): * sys/oss/gstossaudio.c: (plugin_init):

View file

@ -49,8 +49,6 @@ GST_STATIC_PAD_TEMPLATE (
"height = (int) [ 0, MAX ]") "height = (int) [ 0, MAX ]")
); );
static void gst_ximagesink_buffer_free (GstBuffer *buffer);
static GstVideoSinkClass *parent_class = NULL; static GstVideoSinkClass *parent_class = NULL;
/* ============================================================= */ /* ============================================================= */
@ -741,8 +739,7 @@ gst_ximagesink_chain (GstPad *pad, GstData *data)
/* If this buffer has been allocated using our buffer management we simply /* If this buffer has been allocated using our buffer management we simply
put the ximage which is in the PRIVATE pointer */ put the ximage which is in the PRIVATE pointer */
/* FIXME: need to check for correct xvimagesink here? */ 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)); gst_ximagesink_ximage_put (ximagesink, GST_BUFFER_PRIVATE (buf));
} }

View file

@ -55,8 +55,6 @@ GST_STATIC_PAD_TEMPLATE (
) )
); );
static void gst_xvimagesink_buffer_free (GstBuffer *buffer);
static GstVideoSinkClass *parent_class = NULL; static GstVideoSinkClass *parent_class = NULL;
/* ============================================================= */ /* ============================================================= */
@ -901,8 +899,7 @@ gst_xvimagesink_chain (GstPad *pad, GstData *data)
/* If this buffer has been allocated using our buffer management we simply /* If this buffer has been allocated using our buffer management we simply
put the ximage which is in the PRIVATE pointer */ put the ximage which is in the PRIVATE pointer */
/* FIXME: need to check for correct xvimagesink here? */ if (GST_BUFFER_PRIVATE (buf))
if (GST_BUFFER_FREE_DATA_FUNC (buf) == gst_xvimagesink_buffer_free)
{ {
gst_xvimagesink_xvimage_put (xvimagesink, GST_BUFFER_PRIVATE (buf)); gst_xvimagesink_xvimage_put (xvimagesink, GST_BUFFER_PRIVATE (buf));
} }