Signed-off-by: Laurent Pinchart <[email protected]>
---
yavta.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/yavta.c b/yavta.c
index 4b531a0360fe..d0bcf7f19c7b 100644
--- a/yavta.c
+++ b/yavta.c
@@ -1225,6 +1225,30 @@ static int video_parse_control_array(const struct
v4l2_query_ext_ctrl *query,
for ( ; isspace(*val); ++val) { };
+ if (*val == '<') {
+ /* Read the control value from the given file. */
+ ssize_t size;
+ int fd;
+
+ val++;
+ fd = open(val, O_RDONLY);
+ if (fd < 0) {
+ printf("unable to open control file `%s'\n", val);
+ return -EINVAL;
+ }
+
+ size = read(fd, ctrl->ptr, ctrl->size);
+ if (size != (ssize_t)ctrl->size) {
+ printf("error reading control file `%s' (%s)\n", val,
+ strerror(errno));
+ close(fd);
+ return -EINVAL;
+ }
+
+ close(fd);
+ return 0;
+ }
+
if (*val++ != '{')
return -EINVAL;
--
2.7.3
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html