v4l2object: Don't set empty interlace-mode list

If for some reason we fail to probe formats (all try_fmt calls fail, for
example), this is not a critical error, but we end up with an empty list
of interlace modes. This causes all subsequent negotiation to fail.

This patch fixes interlace-mode setting to be skipped if we failed to
detect any.

https://bugzilla.gnome.org/show_bug.cgi?id=775702
This commit is contained in:
Arun Raghavan 2016-12-06 17:42:31 +05:30 committed by Arun Raghavan
parent c3cdae4d6e
commit 1ea9735afb

View file

@ -2172,7 +2172,12 @@ gst_v4l2_object_add_interlace_mode (GstV4l2Object * v4l2object,
} }
gst_v4l2src_value_simplify (&interlace_formats); gst_v4l2src_value_simplify (&interlace_formats);
gst_structure_take_value (s, "interlace-mode", &interlace_formats);
if (gst_value_list_get_size (&interlace_formats) > 0)
gst_structure_take_value (s, "interlace-mode", &interlace_formats);
else
GST_WARNING_OBJECT (v4l2object, "Failed to determine interlace mode");
return; return;
} }