diff --git a/ChangeLog b/ChangeLog index 9736ef4ebb..071ede90c6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2004-12-03 Ronald S. Bultje + + * gst/gstpad.c: (gst_pad_is_negotiated), + (gst_pad_get_negotiated_caps): + GST_RPAD_* will only operate on a RealPad (it casts the pointer, + it doesn't actually check the contents), so be sure to hand it + a RealPad else we'll crash. + 2004-12-03 Wim Taymans * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps), diff --git a/gst/gstpad.c b/gst/gstpad.c index 9c2ba11cee..e4ab30e4fa 100644 --- a/gst/gstpad.c +++ b/gst/gstpad.c @@ -2597,7 +2597,7 @@ gst_pad_is_negotiated (GstPad * pad) { g_return_val_if_fail (GST_IS_PAD (pad), FALSE); - if (!GST_PAD_REALIZE (pad)) + if (!(pad = (GstPad *) GST_PAD_REALIZE (pad))) return FALSE; if (!GST_RPAD_LINK (pad)) return FALSE; @@ -2619,7 +2619,7 @@ gst_pad_get_negotiated_caps (GstPad * pad) { g_return_val_if_fail (GST_IS_PAD (pad), NULL); - if (!GST_PAD_REALIZE (pad)) + if (!(pad = (GstPad *) GST_PAD_REALIZE (pad))) return NULL; if (!GST_RPAD_LINK (pad)) return NULL;