From b9a340e6d0d71388303fad9a73e4edc83b563ff8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?IOhannes=20m=20zm=C3=B6lnig?= Date: Tue, 19 Mar 2024 16:45:40 +0100 Subject: [PATCH] allocate_buffers: fix check whether we can re-allocate Closes: https://github.com/umlaeute/v4l2loopback/issues/553 --- v4l2loopback.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/v4l2loopback.c b/v4l2loopback.c index 5861995e..61663d57 100644 --- a/v4l2loopback.c +++ b/v4l2loopback.c @@ -2393,8 +2393,8 @@ static int allocate_buffers(struct v4l2_loopback_device *dev) if (dev->buffer_size * dev->buffers_number == dev->imagesize) return 0; - /* if there is only one writer, no problem should occur */ - if (dev->open_count.counter == 1) + /* check whether the total number of readers/writers is <=1 */ + if ((dev->ready_for_capture + dev->active_readers) <= 1) free_buffers(dev); else return -EINVAL;