--- 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)