matroskademux: Return FALSE from queries if we can't answer POSITION/DURATION queries

This commit is contained in:
Sebastian Dröge 2012-06-25 13:31:16 +02:00
parent c3061f434b
commit dff2fec970

View file

@ -1356,6 +1356,7 @@ gst_matroska_demux_query (GstMatroskaDemux * demux, GstPad * pad,
gst_query_parse_position (query, &format, NULL);
res = TRUE;
if (format == GST_FORMAT_TIME) {
GST_OBJECT_LOCK (demux);
if (context)
@ -1376,9 +1377,9 @@ gst_matroska_demux_query (GstMatroskaDemux * demux, GstPad * pad,
} else {
GST_DEBUG_OBJECT (demux,
"only position query in TIME and DEFAULT format is supported");
res = FALSE;
}
res = TRUE;
break;
}
case GST_QUERY_DURATION:
@ -1387,6 +1388,7 @@ gst_matroska_demux_query (GstMatroskaDemux * demux, GstPad * pad,
gst_query_parse_duration (query, &format, NULL);
res = TRUE;
if (format == GST_FORMAT_TIME) {
GST_OBJECT_LOCK (demux);
gst_query_set_duration (query, GST_FORMAT_TIME,
@ -1401,9 +1403,8 @@ gst_matroska_demux_query (GstMatroskaDemux * demux, GstPad * pad,
} else {
GST_DEBUG_OBJECT (demux,
"only duration query in TIME and DEFAULT format is supported");
res = FALSE;
}
res = TRUE;
break;
}