From f44fd3f60228bb2b8d252ba74fab504ac2d18f99 Mon Sep 17 00:00:00 2001 From: "David I. Lehn" Date: Tue, 24 Feb 2004 18:47:32 +0000 Subject: [PATCH] gstreamer/common.override: Attempt to handle GstBuffer vs GstData better Original commit message from CVS: * gstreamer/common.override: Attempt to handle GstBuffer vs GstData better --- ChangeLog | 5 +++++ gst/common.override | 17 ++++++++++++----- gstreamer/common.override | 17 ++++++++++++----- 3 files changed, 29 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index 252aea0..b8ef8ce 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-02-24 David I. Lehn + + * gstreamer/common.override: + Attempt to handle GstBuffer vs GstData better + 2004-02-24 Johan Dahlin * gstreamer/gstreamer.defs: rename all functions, remove diff --git a/gst/common.override b/gst/common.override index be4491f..f93b430 100644 --- a/gst/common.override +++ b/gst/common.override @@ -132,7 +132,7 @@ _wrap_gst_pad_set_link_function (PyGObject *self, override gst_pad_set_chain_function kwargs static void -call_chain_function(GstPad *pad, GstBuffer *buf) +call_chain_function(GstPad *pad, GstData *data) { PyObject *function; @@ -140,10 +140,17 @@ call_chain_function(GstPad *pad, GstBuffer *buf) pyg_block_threads(); - PyObject_CallFunction (function, - "OO", - pad_private(pad)->pad, - pyg_boxed_new(GST_TYPE_BUFFER, buf, TRUE, TRUE)); + if (GST_IS_BUFFER(data)) { + PyObject_CallFunction (function, + "OO", + pad_private(pad)->pad, + pyg_boxed_new(GST_TYPE_BUFFER, data, TRUE, TRUE)); + } else if (GST_IS_EVENT(data)) { + PyObject_CallFunction (function, + "OO", + pad_private(pad)->pad, + pyg_boxed_new(GST_TYPE_EVENT, data, TRUE, TRUE)); + } if (PyErr_Occurred ()) { PyErr_Print (); diff --git a/gstreamer/common.override b/gstreamer/common.override index be4491f..f93b430 100644 --- a/gstreamer/common.override +++ b/gstreamer/common.override @@ -132,7 +132,7 @@ _wrap_gst_pad_set_link_function (PyGObject *self, override gst_pad_set_chain_function kwargs static void -call_chain_function(GstPad *pad, GstBuffer *buf) +call_chain_function(GstPad *pad, GstData *data) { PyObject *function; @@ -140,10 +140,17 @@ call_chain_function(GstPad *pad, GstBuffer *buf) pyg_block_threads(); - PyObject_CallFunction (function, - "OO", - pad_private(pad)->pad, - pyg_boxed_new(GST_TYPE_BUFFER, buf, TRUE, TRUE)); + if (GST_IS_BUFFER(data)) { + PyObject_CallFunction (function, + "OO", + pad_private(pad)->pad, + pyg_boxed_new(GST_TYPE_BUFFER, data, TRUE, TRUE)); + } else if (GST_IS_EVENT(data)) { + PyObject_CallFunction (function, + "OO", + pad_private(pad)->pad, + pyg_boxed_new(GST_TYPE_EVENT, data, TRUE, TRUE)); + } if (PyErr_Occurred ()) { PyErr_Print (); -- 2.7.4