summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.net>2013-08-14 13:27:03 +0100
committerTim-Philipp Müller <tim@centricular.net>2013-08-14 13:29:02 +0100
commit9d92aaabe7f55f3476e8e70b31342afa7f2a2bee (patch)
tree2bfc505bf48423c4b21d6049b62267e7f2352b3c
parent8b24d5829bb9875a218c87f58466ffc3f3d90bbe (diff)
downloadgstreamer-plugins-bad-9d92aaabe7f55f3476e8e70b31342afa7f2a2bee.tar.gz
dvbbasebin: fix criticals when trying to cast a GstPad to a GstElement
message->src might be a GstPad. Observed during gst-inspect-1.0 -a
-rw-r--r--sys/dvb/dvbbasebin.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dvb/dvbbasebin.c b/sys/dvb/dvbbasebin.c
index 94853ea31..7f810ac1a 100644
--- a/sys/dvb/dvbbasebin.c
+++ b/sys/dvb/dvbbasebin.c
@@ -779,7 +779,8 @@ dvb_base_bin_handle_message (GstBin * bin, GstMessage * message)
dvbbasebin = GST_DVB_BASE_BIN (bin);
- if (GST_ELEMENT (message->src) == GST_ELEMENT (dvbbasebin->tsparse)) {
+ /* note: message->src might be a GstPad, so use element cast w/o typecheck */
+ if (GST_ELEMENT_CAST (message->src) == GST_ELEMENT (dvbbasebin->tsparse)) {
GstMpegTsSection *section = gst_message_parse_mpegts_section (message);
if (section) {