v4l2object: Protect against zero PAR num/demu
authorNicolas Dufresne <nicolas@ndufresne.ca>
Tue, 11 Sep 2018 00:18:32 +0000 (00:18 +0000)
committerNicolas Dufresne <nicolas.dufresne@collabora.com>
Thu, 13 Sep 2018 00:49:41 +0000 (20:49 -0400)
This fixes an assertion when the driver implement CROPCAP but does
not set the PAR.

sys/v4l2/gstv4l2object.c

index e9b3e24..ad47fe0 100644 (file)
@@ -4182,7 +4182,7 @@ gst_v4l2_object_probe_caps (GstV4l2Object * v4l2object, GstCaps * filter)
         GST_WARNING_OBJECT (v4l2object->dbg_obj,
             "Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: %s",
             g_strerror (errno));
-    } else {
+    } else if (cropcap.pixelaspect.numerator && cropcap.pixelaspect.denominator) {
       v4l2object->par = g_new0 (GValue, 1);
       g_value_init (v4l2object->par, GST_TYPE_FRACTION);
       gst_value_set_fraction (v4l2object->par, cropcap.pixelaspect.numerator,