From b9ace709dcf08957d73b61feb866ccbc5ac985fa Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Tue, 18 Jan 2022 13:46:32 +0100 Subject: [PATCH] pw-v4l2: clamp buffers to max See #2029 --- pipewire-v4l2/src/pipewire-v4l2.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pipewire-v4l2/src/pipewire-v4l2.c b/pipewire-v4l2/src/pipewire-v4l2.c index 2e1318885..544c4a6b1 100644 --- a/pipewire-v4l2/src/pipewire-v4l2.c +++ b/pipewire-v4l2/src/pipewire-v4l2.c @@ -1119,12 +1119,13 @@ static void on_stream_param_changed(void *data, uint32_t id, const struct spa_po file->v4l2_format = fmt; - buffers = file->reqbufs; + buffers = SPA_CLAMP(file->reqbufs, 2u, MAX_BUFFERS); size = 0; params[n_params++] = spa_pod_builder_add_object(&b, SPA_TYPE_OBJECT_ParamBuffers, SPA_PARAM_Buffers, - SPA_PARAM_BUFFERS_buffers, SPA_POD_Int(buffers), + SPA_PARAM_BUFFERS_buffers, SPA_POD_CHOICE_RANGE_Int(buffers, + 2, MAX_BUFFERS), SPA_PARAM_BUFFERS_blocks, SPA_POD_Int(1), SPA_PARAM_BUFFERS_size, SPA_POD_CHOICE_RANGE_Int(size, 0, INT_MAX), SPA_PARAM_BUFFERS_stride, SPA_POD_CHOICE_RANGE_Int(0, 0, INT_MAX),