[{"id":35442,"web_url":"https://patchwork.libcamera.org/comment/35442/","msgid":"<3e5eb24b-356c-4a45-a2a6-c6f7007403d0@ideasonboard.com>","date":"2025-08-15T11:53:08","subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","submitter":{"id":216,"url":"https://patchwork.libcamera.org/api/people/216/","name":"Barnabás Pőcze","email":"barnabas.pocze@ideasonboard.com"},"content":"Hi\n\n2025. 08. 15. 13:33 keltezéssel, Laurent Pinchart írta:\n> Simplify a range-based for loop by replacing an iterator with structure\n> bindings. This makes the code easier to read.\n> \n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\nThe same transformation could be done in many places. Not sure if it's worth\ndoing all of them in one go, or on a case by case basis.\n\nReviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>\n\n\n\n> ---\n>   src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 8 ++++----\n>   1 file changed, 4 insertions(+), 4 deletions(-)\n> \n> diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> index 563df198e6e4..09d30f34d9b7 100644\n> --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> @@ -882,10 +882,10 @@ void PipelineHandlerBase::mapBuffers(Camera *camera, const BufferMap &buffers, u\n>   \t * This will allow us to identify buffers passed between the pipeline\n>   \t * handler and the IPA.\n>   \t */\n> -\tfor (auto const &it : buffers) {\n> -\t\tbufferIds.push_back(IPABuffer(mask | it.first,\n> -\t\t\t\t\t      it.second.buffer->planes()));\n> -\t\tdata->bufferIds_.insert(mask | it.first);\n> +\tfor (auto const &[id, buffer] : buffers) {\n> +\t\tbufferIds.push_back(IPABuffer(mask | id,\n> +\t\t\t\t\t      buffer.buffer->planes()));\n\nI suppose we might as well use emplace_back() here, but may that should be separate.\n\n\n> +\t\tdata->bufferIds_.insert(mask | id);\n>   \t}\n>   \n>   \tdata->ipa_->mapBuffers(bufferIds);","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 73D4CBDCC1\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 15 Aug 2025 11:53:15 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 564AE6924E;\n\tFri, 15 Aug 2025 13:53:14 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 5705361443\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 15 Aug 2025 13:53:12 +0200 (CEST)","from [192.168.33.21] (185.221.141.188.nat.pool.zt.hu\n\t[185.221.141.188])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 03BAF605;\n\tFri, 15 Aug 2025 13:52:16 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"UhXQuphf\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1755258737;\n\tbh=e4GwmF0DSdVX2i4JAl0EObJARkLdpbeHTHyzfT8zsHM=;\n\th=Date:Subject:To:Cc:References:From:In-Reply-To:From;\n\tb=UhXQuphfsT1Me9hRLL8ebAZPV3wuobJQGb1inaI5Q4X2rMi/Qn6TJZoYEIRn3lt2T\n\t0sbqUqjZyyBYJLaZVCRqAjgEi7HgiYio8L3kaOFU+qJnJhCjb7LvQ5Sjtxi8jIJvlO\n\tIuwSJuCzTOy3A84wqxSlCgLP0XJwVZQUYWh4KWDo=","Message-ID":"<3e5eb24b-356c-4a45-a2a6-c6f7007403d0@ideasonboard.com>","Date":"Fri, 15 Aug 2025 13:53:08 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Cc":"=?utf-8?q?Daniel_R=C3=A1kos?= <daniel.rakos@rastergrid.com>","References":"<20250815113400.20623-1-laurent.pinchart@ideasonboard.com>\n\t<20250815113400.20623-5-laurent.pinchart@ideasonboard.com>","From":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>","Content-Language":"en-US, hu-HU","In-Reply-To":"<20250815113400.20623-5-laurent.pinchart@ideasonboard.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":35444,"web_url":"https://patchwork.libcamera.org/comment/35444/","msgid":"<36232436-2d36-4aa9-8b3a-c12e3965bd14@ideasonboard.com>","date":"2025-08-15T11:58:37","subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","submitter":{"id":216,"url":"https://patchwork.libcamera.org/api/people/216/","name":"Barnabás Pőcze","email":"barnabas.pocze@ideasonboard.com"},"content":"2025. 08. 15. 13:53 keltezéssel, Barnabás Pőcze írta:\n> Hi\n> \n> 2025. 08. 15. 13:33 keltezéssel, Laurent Pinchart írta:\n>> Simplify a range-based for loop by replacing an iterator with structure\n>> bindings. This makes the code easier to read.\n>>\n>> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> \n> The same transformation could be done in many places. Not sure if it's worth\n> doing all of them in one go, or on a case by case basis.\n> \n> Reviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>\n> \n> \n> \n>> ---\n>>   src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 8 ++++----\n>>   1 file changed, 4 insertions(+), 4 deletions(-)\n>>\n>> diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n>> index 563df198e6e4..09d30f34d9b7 100644\n>> --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n>> +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n>> @@ -882,10 +882,10 @@ void PipelineHandlerBase::mapBuffers(Camera *camera, const BufferMap &buffers, u\n>>        * This will allow us to identify buffers passed between the pipeline\n>>        * handler and the IPA.\n>>        */\n>> -    for (auto const &it : buffers) {\n>> -        bufferIds.push_back(IPABuffer(mask | it.first,\n>> -                          it.second.buffer->planes()));\n>> -        data->bufferIds_.insert(mask | it.first);\n>> +    for (auto const &[id, buffer] : buffers) {\n>> +        bufferIds.push_back(IPABuffer(mask | id,\n>> +                          buffer.buffer->planes()));\n> \n> I suppose we might as well use emplace_back() here, but may that should be separate.\n\nSorry, I see it is done later.\n\n\n> \n> \n>> +        data->bufferIds_.insert(mask | id);\n>>       }\n>>       data->ipa_->mapBuffers(bufferIds);\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 83D1EBEFBE\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 15 Aug 2025 11:58:44 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 27EDA69257;\n\tFri, 15 Aug 2025 13:58:43 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id CA7CC61443\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 15 Aug 2025 13:58:41 +0200 (CEST)","from [192.168.33.21] (185.221.141.188.nat.pool.zt.hu\n\t[185.221.141.188])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 7ED01605;\n\tFri, 15 Aug 2025 13:57:46 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"bofV+Vdj\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1755259066;\n\tbh=qgVgxyfsyM+7xar/0W2t4L+NT2w8m7Kl7nVUIlEu5zc=;\n\th=Date:Subject:From:To:Cc:References:In-Reply-To:From;\n\tb=bofV+Vdj3a+ZbffB7TE8Xy0zv1peCZHmcyzHbVc2ks7P55o3BKppm3RIAP+hjy9yt\n\t/6ENLMGFok5DmsvrXPctxQK33BeeTObxgg1utW37JrQyU7C1w9sJ5qA6lYkkzeiIZl\n\t3Ib8TclxFXmWl8ITRAPqjejV86jDT4jEfJdvOD9M=","Message-ID":"<36232436-2d36-4aa9-8b3a-c12e3965bd14@ideasonboard.com>","Date":"Fri, 15 Aug 2025 13:58:37 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","From":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Cc":"=?utf-8?q?Daniel_R=C3=A1kos?= <daniel.rakos@rastergrid.com>","References":"<20250815113400.20623-1-laurent.pinchart@ideasonboard.com>\n\t<20250815113400.20623-5-laurent.pinchart@ideasonboard.com>\n\t<3e5eb24b-356c-4a45-a2a6-c6f7007403d0@ideasonboard.com>","Content-Language":"en-US, hu-HU","In-Reply-To":"<3e5eb24b-356c-4a45-a2a6-c6f7007403d0@ideasonboard.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":35461,"web_url":"https://patchwork.libcamera.org/comment/35461/","msgid":"<20250815232707.GQ6201@pendragon.ideasonboard.com>","date":"2025-08-15T23:27:07","subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"On Fri, Aug 15, 2025 at 01:53:08PM +0200, Barnabás Pőcze wrote:\n> 2025. 08. 15. 13:33 keltezéssel, Laurent Pinchart írta:\n> > Simplify a range-based for loop by replacing an iterator with structure\n> > bindings. This makes the code easier to read.\n> > \n> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> \n> The same transformation could be done in many places. Not sure if it's worth\n> doing all of them in one go, or on a case by case basis.\n\nThis one was really a drive-by patch. Addressing the other ones would be\nnice.\n\n> Reviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>\n> \n> > ---\n> >   src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 8 ++++----\n> >   1 file changed, 4 insertions(+), 4 deletions(-)\n> > \n> > diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> > index 563df198e6e4..09d30f34d9b7 100644\n> > --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> > +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> > @@ -882,10 +882,10 @@ void PipelineHandlerBase::mapBuffers(Camera *camera, const BufferMap &buffers, u\n> >   \t * This will allow us to identify buffers passed between the pipeline\n> >   \t * handler and the IPA.\n> >   \t */\n> > -\tfor (auto const &it : buffers) {\n> > -\t\tbufferIds.push_back(IPABuffer(mask | it.first,\n> > -\t\t\t\t\t      it.second.buffer->planes()));\n> > -\t\tdata->bufferIds_.insert(mask | it.first);\n> > +\tfor (auto const &[id, buffer] : buffers) {\n> > +\t\tbufferIds.push_back(IPABuffer(mask | id,\n> > +\t\t\t\t\t      buffer.buffer->planes()));\n> \n> I suppose we might as well use emplace_back() here, but may that should be separate.\n> \n> > +\t\tdata->bufferIds_.insert(mask | id);\n> >   \t}\n> >   \n> >   \tdata->ipa_->mapBuffers(bufferIds);","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id C554FBEFBE\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 15 Aug 2025 23:27:31 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 79E1569259;\n\tSat, 16 Aug 2025 01:27:30 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 9BF4461427\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 16 Aug 2025 01:27:28 +0200 (CEST)","from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with UTF8SMTPSA id 30504928;\n\tSat, 16 Aug 2025 01:26:33 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"LD1cP/B7\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1755300393;\n\tbh=ufUmyFHla9McoitDgHeB3f8XAJ05fuzHZKWG8LQ5k+8=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=LD1cP/B7MIj7V7HQS1clKRDOW3/ThmSrUJ13grBc1fzpQb/zWEEbZdgha8rvKrV8h\n\tvS0wtpZwnFemZaBTY6d1WukBlSQgdQBW0ksxJXUArAqGh8mS1jLr63g+zmd8jbfA/I\n\txAQGq+Z/ODA70HlfDi/7eglQyW1P7tkNCq1F6q2Q=","Date":"Sat, 16 Aug 2025 02:27:07 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org, Daniel =?utf-8?b?UsOha29z?=\n\t<daniel.rakos@rastergrid.com>","Subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","Message-ID":"<20250815232707.GQ6201@pendragon.ideasonboard.com>","References":"<20250815113400.20623-1-laurent.pinchart@ideasonboard.com>\n\t<20250815113400.20623-5-laurent.pinchart@ideasonboard.com>\n\t<3e5eb24b-356c-4a45-a2a6-c6f7007403d0@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<3e5eb24b-356c-4a45-a2a6-c6f7007403d0@ideasonboard.com>","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":35519,"web_url":"https://patchwork.libcamera.org/comment/35519/","msgid":"<dcgheh7x6jbjeftsxpllftwj6rydsh26pc5bgnxondrbcbuwoj@oqiukxnici7u>","date":"2025-08-19T15:23:50","subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","submitter":{"id":143,"url":"https://patchwork.libcamera.org/api/people/143/","name":"Jacopo Mondi","email":"jacopo.mondi@ideasonboard.com"},"content":"Hi Laurent\n\nOn Fri, Aug 15, 2025 at 02:33:56PM +0300, Laurent Pinchart wrote:\n> Simplify a range-based for loop by replacing an iterator with structure\n> bindings. This makes the code easier to read.\n>\n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n\nReviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n\n\n> ---\n>  src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 8 ++++----\n>  1 file changed, 4 insertions(+), 4 deletions(-)\n>\n> diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> index 563df198e6e4..09d30f34d9b7 100644\n> --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp\n> @@ -882,10 +882,10 @@ void PipelineHandlerBase::mapBuffers(Camera *camera, const BufferMap &buffers, u\n>  \t * This will allow us to identify buffers passed between the pipeline\n>  \t * handler and the IPA.\n>  \t */\n> -\tfor (auto const &it : buffers) {\n> -\t\tbufferIds.push_back(IPABuffer(mask | it.first,\n> -\t\t\t\t\t      it.second.buffer->planes()));\n> -\t\tdata->bufferIds_.insert(mask | it.first);\n> +\tfor (auto const &[id, buffer] : buffers) {\n> +\t\tbufferIds.push_back(IPABuffer(mask | id,\n> +\t\t\t\t\t      buffer.buffer->planes()));\n> +\t\tdata->bufferIds_.insert(mask | id);\n>  \t}\n>\n>  \tdata->ipa_->mapBuffers(bufferIds);\n> --\n> Regards,\n>\n> Laurent Pinchart\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 77E49BD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 19 Aug 2025 15:23:56 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 16E3A692E2;\n\tTue, 19 Aug 2025 17:23:56 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 76C9E692DC\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 19 Aug 2025 17:23:54 +0200 (CEST)","from ideasonboard.com (mob-5-90-52-92.net.vodafone.it [5.90.52.92])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 7C6841F0E;\n\tTue, 19 Aug 2025 17:22:56 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"WFSnRQxQ\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1755616976;\n\tbh=bF1SJsWTsvBt8S6dqR6o+A0kl9wJtbXmsvGWwS11L7Q=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=WFSnRQxQQaLDRidPFYAjb/592KYz8hmqng3qGWKg6zguui/ZaYh92Q5S4mFFr7smD\n\t+vae7sZdqVyO2DjYT0ROHXTPt60LJI35QSdWZOo/sbF/RkMinZnrYi9OFClIWqsHG1\n\tut7KKBKtcd+OsfPs4PeY4hm6IUit1wixLYtbxhIQ=","Date":"Tue, 19 Aug 2025 17:23:50 +0200","From":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org,  Daniel =?utf-8?b?UsOha29z?=\n\t<daniel.rakos@rastergrid.com>","Subject":"Re: [PATCH v2 4/8] pipeline: rpi: Use structured bindings in\n\trange-based for loop","Message-ID":"<dcgheh7x6jbjeftsxpllftwj6rydsh26pc5bgnxondrbcbuwoj@oqiukxnici7u>","References":"<20250815113400.20623-1-laurent.pinchart@ideasonboard.com>\n\t<20250815113400.20623-5-laurent.pinchart@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20250815113400.20623-5-laurent.pinchart@ideasonboard.com>","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]