From b3dc3d7cf248c2225cd38f6dc54b47d8e012247e Mon Sep 17 00:00:00 2001 From: Paul Elder Date: Thu, 18 Jun 2020 17:25:36 +0900 Subject: v4l2: v4l2_camera_proxy: Disallow dqbuf when not streaming Make VIDIOC_DQBUF return -EINVAL if the stream is not turned on. Signed-off-by: Paul Elder Reviewed-by: Laurent Pinchart --- src/v4l2/v4l2_camera_proxy.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/v4l2') diff --git a/src/v4l2/v4l2_camera_proxy.cpp b/src/v4l2/v4l2_camera_proxy.cpp index 0099266e..08fd3fdc 100644 --- a/src/v4l2/v4l2_camera_proxy.cpp +++ b/src/v4l2/v4l2_camera_proxy.cpp @@ -580,6 +580,9 @@ int V4L2CameraProxy::vidioc_dqbuf(V4L2CameraFile *file, struct v4l2_buffer *arg) if (!hasOwnership(file)) return -EBUSY; + if (!vcam_->isRunning()) + return -EINVAL; + if (!validateBufferType(arg->type) || !validateMemoryType(arg->memory)) return -EINVAL; -- cgit v1.2.1