This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:

Subject: v4l2-compliance: add type checks for VIDIOC_CROPCAP
Author:  Hans Verkuil <[email protected]>
Date:    Mon Apr 18 11:51:47 2016 +0200

Add tests to verify that the v4l2_cropcap type field is checked by
the driver.

Signed-off-by: Hans Verkuil <[email protected]>

 utils/v4l2-compliance/v4l2-test-formats.cpp | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=b611dc2c14cff053dae2ff145cfb8b79f88dc19a
diff --git a/utils/v4l2-compliance/v4l2-test-formats.cpp 
b/utils/v4l2-compliance/v4l2-test-formats.cpp
index 417af68de706..86e09aa4e84e 100644
--- a/utils/v4l2-compliance/v4l2-test-formats.cpp
+++ b/utils/v4l2-compliance/v4l2-test-formats.cpp
@@ -1283,10 +1283,20 @@ static int testLegacyCrop(struct node *node)
         * If neither CROPCAP nor G_CROP work, then G_SELECTION shouldn't
         * work either.
         */
-       if (!doioctl(node, VIDIOC_CROPCAP, &cap))
+       if (!doioctl(node, VIDIOC_CROPCAP, &cap)) {
                fail_on_test(doioctl(node, VIDIOC_G_SELECTION, &sel));
-       else
+
+               // Checks for invalid types
+               if (cap.type == V4L2_BUF_TYPE_VIDEO_CAPTURE)
+                       cap.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
+               else
+                       cap.type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE;
+               fail_on_test(doioctl(node, VIDIOC_CROPCAP, &cap) != EINVAL);
+               cap.type = 0xff;
+               fail_on_test(doioctl(node, VIDIOC_CROPCAP, &cap) != EINVAL);
+       } else {
                fail_on_test(!doioctl(node, VIDIOC_G_SELECTION, &sel));
+       }
        sel.target = node->can_capture ? V4L2_SEL_TGT_CROP :
                                         V4L2_SEL_TGT_COMPOSE;
        if (!doioctl(node, VIDIOC_G_CROP, &crop))

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to