GstFlowReturn result = GST_FLOW_OK;
bsink = GST_BASE_SINK (gst_pad_get_parent (pad));
+ if (G_UNLIKELY (bsink == NULL))
+ return GST_FLOW_WRONG_STATE;
bclass = GST_BASE_SINK_GET_CLASS (bsink);
if (bclass->buffer_alloc)
GstBaseSinkClass *bclass;
basesink = GST_BASE_SINK (gst_pad_get_parent (pad));
+ if (G_UNLIKELY (basesink == NULL)) {
+ gst_event_unref (event);
+ return FALSE;
+ }
bclass = GST_BASE_SINK_GET_CLASS (basesink);
gst_base_transform_query (GstPad * pad, GstQuery * query)
{
gboolean ret = FALSE;
- GstBaseTransform *trans = GST_BASE_TRANSFORM (gst_pad_get_parent (pad));
- GstPad *otherpad = (pad == trans->srcpad) ? trans->sinkpad : trans->srcpad;
+ GstBaseTransform *trans;
+ GstPad *otherpad;
+
+ trans = GST_BASE_TRANSFORM (gst_pad_get_parent (pad));
+ if (G_UNLIKELY (trans == NULL))
+ return FALSE;
+ otherpad = (pad == trans->srcpad) ? trans->sinkpad : trans->srcpad;
switch (GST_QUERY_TYPE (query)) {
case GST_QUERY_POSITION:{
guint size_suggest;
trans = GST_BASE_TRANSFORM (gst_pad_get_parent (pad));
+ if (G_UNLIKELY (trans == NULL))
+ return GST_FLOW_WRONG_STATE;
klass = GST_BASE_TRANSFORM_GET_CLASS (trans);
priv = trans->priv;
gboolean forward = TRUE;
trans = GST_BASE_TRANSFORM (gst_pad_get_parent (pad));
+ if (G_UNLIKELY (trans == NULL)) {
+ gst_event_unref (event);
+ return FALSE;
+ }
bclass = GST_BASE_TRANSFORM_GET_CLASS (trans);
if (bclass->event)