mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-10 04:30:00 +00:00
v4l-utils: Remove unneeded musl patch
The musl issue that 0004-Do-not-use-getsubopt.patch fixes has already been addressed by the following v4l-utils upstream commit: commit 6e19bb895a16a9a247524ac526ab47f576cc36f6 Author: Hans Verkuil <hverkuil-cisco@xs4all.nl> Date: Thu Nov 25 10:59:22 2021 +0100 v4l-utils: use v4l_getsubopt instead of getsubopt Android doesn't have getsubopt at all, and some libc implementations use a getsubopt variant that behaves slightly different. So add a new v4l-getsubopt.h header that either just uses the glibc function (if glibc is detected) or uses a static inline v4l_getsubopt that is copied from glibc. This should avoid such problems. Reported-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Remove the unneeded patch. Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
@@ -1,60 +0,0 @@
|
|||||||
From 6e7e52de7afe29597016952a7317faf9c3ea3268 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Khem Raj <raj.khem@gmail.com>
|
|
||||||
Date: Sat, 30 Nov 2019 18:50:34 -0800
|
|
||||||
Subject: [PATCH] Do not use getsubopt
|
|
||||||
|
|
||||||
POSIX says that behavior when subopts list is empty is undefined.
|
|
||||||
musl libs will set value to NULL which leads to crash.
|
|
||||||
|
|
||||||
Simply avoid getsubopt, since we cannot rely on it.
|
|
||||||
|
|
||||||
Imported from Alpine Linux
|
|
||||||
|
|
||||||
Upstream-Status: Pending
|
|
||||||
|
|
||||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
||||||
|
|
||||||
Adapt patch to 1.23.0.
|
|
||||||
|
|
||||||
(v4l-utils rev fd544473800d02e90bc289434cc44e5aa8fadd0f).
|
|
||||||
|
|
||||||
%% original patch: 0007-Do-not-use-getsubopt.patch
|
|
||||||
|
|
||||||
Signed-off-by: Daniel Gomez <daniel@qtec.com>
|
|
||||||
---
|
|
||||||
utils/v4l2-ctl/v4l2-ctl-common.cpp | 18 ++++++++++--------
|
|
||||||
1 file changed, 10 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/utils/v4l2-ctl/v4l2-ctl-common.cpp b/utils/v4l2-ctl/v4l2-ctl-common.cpp
|
|
||||||
index d77f7104..838c297d 100644
|
|
||||||
--- a/utils/v4l2-ctl/v4l2-ctl-common.cpp
|
|
||||||
+++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp
|
|
||||||
@@ -994,15 +994,17 @@ static bool parse_subset(char *optarg)
|
|
||||||
|
|
||||||
static bool parse_next_subopt(char **subs, char **value)
|
|
||||||
{
|
|
||||||
- static char *const subopts[] = {
|
|
||||||
- nullptr
|
|
||||||
- };
|
|
||||||
- int opt = v4l_getsubopt(subs, subopts, value);
|
|
||||||
+ char *p = *subs;
|
|
||||||
+ *value = *subs;
|
|
||||||
|
|
||||||
- if (opt < 0 || *value)
|
|
||||||
- return false;
|
|
||||||
- fprintf(stderr, "Missing suboption value\n");
|
|
||||||
- return true;
|
|
||||||
+ while (*p && *p != ',')
|
|
||||||
+ p++;
|
|
||||||
+
|
|
||||||
+ if (*p)
|
|
||||||
+ *p++ = '\0';
|
|
||||||
+
|
|
||||||
+ *subs = p;
|
|
||||||
+ return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void common_cmd(const std::string &media_bus_info, int ch, char *optarg)
|
|
||||||
--
|
|
||||||
2.35.1
|
|
||||||
|
|
||||||
@@ -28,7 +28,6 @@ PACKAGECONFIG[v4l2-tracer] = ",-Dv4l2-tracer=disabled,json-c"
|
|||||||
SRC_URI = "\
|
SRC_URI = "\
|
||||||
git://git.linuxtv.org/v4l-utils.git;protocol=https;branch=stable-1.26 \
|
git://git.linuxtv.org/v4l-utils.git;protocol=https;branch=stable-1.26 \
|
||||||
file://0001-keytable-meson-Restrict-the-installation-of-50-rc_ke.patch \
|
file://0001-keytable-meson-Restrict-the-installation-of-50-rc_ke.patch \
|
||||||
file://0004-Do-not-use-getsubopt.patch \
|
|
||||||
"
|
"
|
||||||
|
|
||||||
SRCREV = "4aee01a027923cab1e40969f56f8ba58d3e6c0d1"
|
SRCREV = "4aee01a027923cab1e40969f56f8ba58d3e6c0d1"
|
||||||
|
|||||||
Reference in New Issue
Block a user