Patch Detail
Show a patch.
GET /api/1.1/patches/17813/?format=api
{ "id": 17813, "url": "https://patchwork.libcamera.org/api/1.1/patches/17813/?format=api", "web_url": "https://patchwork.libcamera.org/patch/17813/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/1.1/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20221118162129.22866-1-jacopo@jmondi.org>", "date": "2022-11-18T16:21:29", "name": "[libcamera-devel] gstreamer: Do not lookup controls by id", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": false, "hash": "b197a2ba0535da6402941d755c88f5e23f141b74", "submitter": { "id": 3, "url": "https://patchwork.libcamera.org/api/1.1/people/3/?format=api", "name": "Jacopo Mondi", "email": "jacopo@jmondi.org" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/17813/mbox/", "series": [ { "id": 3617, "url": "https://patchwork.libcamera.org/api/1.1/series/3617/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=3617", "date": "2022-11-18T16:21:29", "name": "[libcamera-devel] gstreamer: Do not lookup controls by id", "version": 1, "mbox": "https://patchwork.libcamera.org/series/3617/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/17813/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/17813/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 7E4E7BD16B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 18 Nov 2022 16:21:41 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 952726309B;\n\tFri, 18 Nov 2022 17:21:40 +0100 (CET)", "from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net\n\t[217.70.183.201])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 954596308D\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 18 Nov 2022 17:21:38 +0100 (CET)", "(Authenticated sender: jacopo@jmondi.org)\n\tby mail.gandi.net (Postfix) with ESMTPSA id CA9F71BF205;\n\tFri, 18 Nov 2022 16:21:37 +0000 (UTC)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1668788500;\n\tbh=b0DiHdExjBViuWUS2HuKRRT24zMWcwlNJ+t+QsoWUf4=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:Cc:From;\n\tb=XPN8CyzQz2dxYdV5BIhjmYFQcXY2sZvoKnYSaxRucmugriZlFz/YftT7zIL0UttHs\n\tFG4Lk+Rihu84M2Wo/Hg7hahuOOMiaMROGjF7uLuCYiGlg79i2WpMT47HcyN9BHKkBp\n\teQoBePjinK/r/DHTZeL06fdg5p1OY1N3h2nwEtN6yncsHhx0mrQOM/sVSGEc4tK2Y+\n\twT2oXjCqlbE5cTmbg7ZexuKkz6fvD8sZ7GfY3dzHWxJ0xIgbi/1Y4SguVE6ixEbY05\n\tmrthca8gJ5wg1lkRPr+GtqZ+0nKhVEAkhVv6nwip9UWysZiuMPa8+qwTtYo9agxa2E\n\tmq/2htgS5vnhg==", "To": "libcamera-devel@lists.libcamera.org", "Date": "Fri, 18 Nov 2022 17:21:29 +0100", "Message-Id": "<20221118162129.22866-1-jacopo@jmondi.org>", "X-Mailer": "git-send-email 2.38.1", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH] gstreamer: Do not lookup controls by id", "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": "Jacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>", "Reply-To": "Jacopo Mondi <jacopo@jmondi.org>", "Cc": "Rishikesh Donadkar <rishikeshdonadkar@gmail.com>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "The libcamerasrc element looks for the availability of the\nFrameDurationLimits control by looking it up by numeric control id.\n\nThe ControlinfoMap::find(unsigned int i) function searches the control\nnumerical identifier on the ContorlInfoMap::idMap_ class member, which\nmight be not initialized if the pipeline handler does not register\nany control, causing an invalid memory access.\n\nAvoid looking up the control by numerical id and use the ControlId\ninstance instead to prevent that.\n\nFixes: ccfe0a1af77c (\"gstreamer: Provide framerate support for libcamerasrc\")\nSigned-off-by: Jacopo Mondi <jacopo@jmondi.org>\n---\n src/gstreamer/gstlibcamera-utils.cpp | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\n--\n2.38.1", "diff": "diff --git a/src/gstreamer/gstlibcamera-utils.cpp b/src/gstreamer/gstlibcamera-utils.cpp\nindex 64d197010008..36b9564c4cb4 100644\n--- a/src/gstreamer/gstlibcamera-utils.cpp\n+++ b/src/gstreamer/gstlibcamera-utils.cpp\n@@ -436,7 +436,7 @@ void gst_libcamera_clamp_and_set_frameduration(ControlList &initCtrls,\n \tif (!gst_structure_has_field_typed(element_caps, \"framerate\", GST_TYPE_FRACTION))\n \t\treturn;\n\n-\tauto iterFrameDuration = cam_ctrls.find(controls::FrameDurationLimits.id());\n+\tauto iterFrameDuration = cam_ctrls.find(&controls::FrameDurationLimits);\n \tif (iterFrameDuration == cam_ctrls.end()) {\n \t\tGST_WARNING(\"FrameDurationLimits not found in camera controls.\");\n \t\treturn;\n", "prefixes": [ "libcamera-devel" ] }