diff --git a/modules/videoio/src/cap_v4l.cpp b/modules/videoio/src/cap_v4l.cpp index 0416231f65e772ce2e8994e68e3008990fb0008e..1650093e7fbee15d737c992016f4e48fd2b2aa89 100644 --- a/modules/videoio/src/cap_v4l.cpp +++ b/modules/videoio/src/cap_v4l.cpp @@ -512,9 +512,11 @@ static void v4l2_scan_controls(CvCaptureCAM_V4L* capture) for (ctrl_id = V4L2_CID_PRIVATE_BASE;;ctrl_id++) { + errno = 0; + v4l2_control_range(capture, ctrl_id); - if (errno == EINVAL) + if (errno) break; }