From 7c5fe897f64f6732a3047175686efeb5aba16278 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Sun, 26 Jul 2020 16:14:20 -0700 Subject: [PATCH] v4l-utils: bring back getsubopt patch During the update to 1.20.0, this patch was mistakenly removed. Signed-off-by: Rosen Penev (cherry picked from commit 8df4e29cff5e35b00c10c87a9cdfa4044e74edb3) --- libs/libv4l/Makefile | 2 +- libs/libv4l/patches/030-getsubopt.patch | 28 +++++++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 libs/libv4l/patches/030-getsubopt.patch diff --git a/libs/libv4l/Makefile b/libs/libv4l/Makefile index 54dfb43680..9755f820dc 100644 --- a/libs/libv4l/Makefile +++ b/libs/libv4l/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=v4l-utils PKG_VERSION:=1.20.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://www.linuxtv.org/downloads/v4l-utils diff --git a/libs/libv4l/patches/030-getsubopt.patch b/libs/libv4l/patches/030-getsubopt.patch new file mode 100644 index 0000000000..3e48732f25 --- /dev/null +++ b/libs/libv4l/patches/030-getsubopt.patch @@ -0,0 +1,28 @@ +--- a/utils/v4l2-ctl/v4l2-ctl-common.cpp ++++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp +@@ -785,15 +785,17 @@ static bool parse_subset(char *optarg) + + static bool parse_next_subopt(char **subs, char **value) + { +- static char *const subopts[] = { +- NULL +- }; +- int opt = 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.30.2