{"id":18521,"url":"https://patchwork.libcamera.org/api/patches/18521/?format=json","web_url":"https://patchwork.libcamera.org/patch/18521/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20230331-simple-controls-v1-1-f7b8327d2c26@baylibre.com>","date":"2023-03-31T15:09:58","name":"[libcamera-devel] pipeline: simple: set controlInfo_ to sensor_->controls()","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"68055d9c020e6fe7ccea8b2d22409660009943be","submitter":{"id":153,"url":"https://patchwork.libcamera.org/api/people/153/?format=json","name":"Mattijs Korpershoek","email":"mkorpershoek@baylibre.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/18521/mbox/","series":[{"id":3834,"url":"https://patchwork.libcamera.org/api/series/3834/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=3834","date":"2023-03-31T15:09:58","name":"[libcamera-devel] pipeline: simple: set controlInfo_ to sensor_->controls()","version":1,"mbox":"https://patchwork.libcamera.org/series/3834/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/18521/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/18521/checks/","tags":{},"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 36C4EC0F2A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 31 Mar 2023 15:10:05 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 984CF62742;\n\tFri, 31 Mar 2023 17:10:04 +0200 (CEST)","from mail-wr1-x436.google.com (mail-wr1-x436.google.com\n\t[IPv6:2a00:1450:4864:20::436])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id AE57A603A7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 31 Mar 2023 17:10:03 +0200 (CEST)","by mail-wr1-x436.google.com with SMTP id d17so22752548wrb.11\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 31 Mar 2023 08:10:03 -0700 (PDT)","from [192.168.1.20] ([2a01:cb19:85e6:1900:2bf7:7388:731d:c4e1])\n\tby smtp.gmail.com with ESMTPSA id\n\tn11-20020a5d660b000000b002c54c9bd71fsm2392532wru.93.2023.03.31.08.10.02\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tFri, 31 Mar 2023 08:10:02 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1680275404;\n\tbh=o9NzB71oYIvyHtcUaflo5QXmDPQ9pRfmc3TGniS9Uss=;\n\th=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:From;\n\tb=XYxe1Y2rrKuq8Ubwkg0oJdWWbFYOarI8s+fwUgVgoYMsoE/MzWA7st2mUqT4XWuP6\n\t71si4bQVD+MJrwhAAcKuTFUo8R7IDgAXk1CurIkzLJqyOeV4hlGCSpB78zASitGInL\n\t7qkciQ+GbwR+rIHVSPCePLLz/9A0SZkyd5e/5raw1JApcvz1Fpen7DshAHFd23HYmj\n\t1d5ynz40ZtY+jV0YeXTkRv7qHcHuOt+F8Ue6aVSOP6cVtA6WCRbM9nRmg4JeVUawmf\n\t4mCjH9I98lhl20Y7STFUfXbmplLeFjG4RB9oYEulO6DuF7DFHGCPSaVftwLmaGvCQi\n\tOEQkDb6wYuU2w==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=baylibre-com.20210112.gappssmtp.com; s=20210112; t=1680275403;\n\th=cc:to:message-id:content-transfer-encoding:mime-version:subject\n\t:date:from:from:to:cc:subject:date:message-id:reply-to;\n\tbh=ni2fl0SP/ePS87kog1uCKOA/ZfB68OaNYxfKhDfprAA=;\n\tb=CJjwXEja+DUI+I/ijj1OIrclhvlsSIcfxYK4HppJpCNJsFoexGnztrchROIXCgNMmM\n\tULuTVjE1E/8kk1V1XFOQ7qyqdVEVSnJ1H+vcElSXz492pSK1b6uLn7hyeTGHGZrrNnDe\n\t0MDu3z1ymToqX0WY6sGxQ2n54mn1+Ot8oXPKUWQqymB8cQiNtioMcmpxRdKY0z6NeuAJ\n\tEEBNscMzomZOy9LG74CEudwnQFl0jXh4NFpoH0meuUhOawGMqKdUmn/yTAoqBgpBY/Ct\n\tLuu5o+Xb/AzCUpflNJ/EQ/lPNRjMYjjl7lVI9C+yUlo8Ha9HfAAKTKSg+KOhXsoIZO/0\n\tZnUw=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected)\n\theader.d=baylibre-com.20210112.gappssmtp.com\n\theader.i=@baylibre-com.20210112.gappssmtp.com header.b=\"CJjwXEja\"; \n\tdkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112; t=1680275403;\n\th=cc:to:message-id:content-transfer-encoding:mime-version:subject\n\t:date:from:x-gm-message-state:from:to:cc:subject:date:message-id\n\t:reply-to;\n\tbh=ni2fl0SP/ePS87kog1uCKOA/ZfB68OaNYxfKhDfprAA=;\n\tb=0a/yFoqZgtdOk686Wodasm2GY7nouOS0VXn8Tlrm4jV+5G76rszXo5LzBNiNIyY5zt\n\tV/U7Bkad8DnI4+1R+9R3M9wWei5JV0eSfGQdztkcW37T2/vSGT+oAzSMw36ANrjdzilC\n\tCPrXUugNPMzrKUnrNmpjWl86Vkf3a8Zpb10SIwgqZCLaGrSsigaRK4WrtJG95dfKi6sO\n\tcy1MOEhGZ6x2RJdrJEhhs046RiwgxGr8zjd4/Abe+cLv98qd0oOGhprOMKdChg7I55x8\n\txaEbUHXMTSW2vNppEbW6N7Gg593ffE/51WTcXnCrkKsBwXFDZDQXw08oavYyGlSqMPwn\n\tdtSQ==","X-Gm-Message-State":"AAQBX9cHkMyKGt0ExIoCQ1795+QGR29E12bjDO/elpisuw3PB1jpqVj8\n\t6v2pxorENvGX7puYWEKjhJCj+g==","X-Google-Smtp-Source":"AKy350ZAUchoTXBD1d3FTQ65Pp+vpZRS71b1hAKlOLAtiRiNbusbsHXpcG8D4Hn0F7dJmvAjZiyDbQ==","X-Received":"by 2002:a05:6000:1009:b0:2cf:f01f:ed89 with SMTP id\n\ta9-20020a056000100900b002cff01fed89mr20286188wrx.24.1680275403153; \n\tFri, 31 Mar 2023 08:10:03 -0700 (PDT)","Date":"Fri, 31 Mar 2023 17:09:58 +0200","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20230331-simple-controls-v1-1-f7b8327d2c26@baylibre.com>","X-B4-Tracking":"v=1; b=H4sIAMX3JmQC/x2NywqDMBAAf0X23FBNkD5+pXiI66ZZ1CTsllIQ/\n\t73R48AMs4GSMCk8mw2EvqycU4Xu0gBGn95keKoMtrWuda4zymtZyGBOH8mLmjA97L13eMMQoFa\n\tjVzKj+ITx6NY5SyHRmGm+ovKhFKHAv3P6Gvb9DwYmS0aEAAAA","To":"libcamera-devel@lists.libcamera.org","X-Mailer":"b4 0.13-dev-00303","Subject":"[libcamera-devel] [PATCH] pipeline: simple: set controlInfo_ to\n\tsensor_->controls()","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>","From":"Mattijs Korpershoek via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Mattijs Korpershoek <mkorpershoek@baylibre.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Each pipeline has a ControlInfoMap to list the set of controls supported\nby the camera.\n\nControlInfoMap() default constructor -used by simple pipeline-,\ninitializes its idmap_ member to nullptr.\n\nOther methods such as ControlInfoMap::find() don't check for idmap_'s\nvalidity so the following code (from find()) crashes:\n\n        auto iter = idmap_->find(id);\n        auto iter = nullptr->find(id);\n\nFix this by assigning the sensor's control info map.\n\nSigned-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>\n---\nAlternatively, we could null check everywhere in controls.cpp or\nget rid of the default constructor for ControlInfoMap.\n---\n src/libcamera/pipeline/simple/simple.cpp | 1 +\n 1 file changed, 1 insertion(+)\n\n\n---\nbase-commit: ac7511dc4c594f567ddff27ccc02c30bf6c00bfd\nchange-id: 20230331-simple-controls-fd92853c7cff\n\nBest regards,","diff":"diff --git a/src/libcamera/pipeline/simple/simple.cpp b/src/libcamera/pipeline/simple/simple.cpp\nindex 2423ec10c878..4db3dc2812b0 100644\n--- a/src/libcamera/pipeline/simple/simple.cpp\n+++ b/src/libcamera/pipeline/simple/simple.cpp\n@@ -537,6 +537,7 @@ int SimpleCameraData::init()\n \t}\n \n \tproperties_ = sensor_->properties();\n+\tcontrolInfo_ = sensor_->controls();\n \n \treturn 0;\n }\n","prefixes":["libcamera-devel"]}