diff options
Diffstat (limited to 'community/v4l-utils/getsubopt.patch')
-rw-r--r-- | community/v4l-utils/getsubopt.patch | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/community/v4l-utils/getsubopt.patch b/community/v4l-utils/getsubopt.patch deleted file mode 100644 index 8ac87a8c7a7..00000000000 --- a/community/v4l-utils/getsubopt.patch +++ /dev/null @@ -1,33 +0,0 @@ -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. - ---- a/utils/v4l2-ctl/v4l2-ctl-common.cpp -+++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp -@@ -782,15 +782,17 @@ - - 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) |