summaryrefslogtreecommitdiff
path: root/src/v4l2/v4l2_camera_proxy.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/v4l2/v4l2_camera_proxy.cpp')
-rw-r--r--src/v4l2/v4l2_camera_proxy.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/v4l2/v4l2_camera_proxy.cpp b/src/v4l2/v4l2_camera_proxy.cpp
index ec6d265d..a0c6deea 100644
--- a/src/v4l2/v4l2_camera_proxy.cpp
+++ b/src/v4l2/v4l2_camera_proxy.cpp
@@ -426,10 +426,10 @@ int V4L2CameraProxy::vidioc_dqbuf(struct v4l2_buffer *arg)
!validateMemoryType(arg->memory))
return -EINVAL;
- if (nonBlocking_ && !vcam_->bufferSema_.tryAcquire())
- return -EAGAIN;
- else
+ if (!nonBlocking_)
vcam_->bufferSema_.acquire();
+ else if (!vcam_->bufferSema_.tryAcquire())
+ return -EAGAIN;
updateBuffers();