summaryrefslogtreecommitdiff
path: root/v4l2-apps/util/v4l2-ctl.cpp
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@infradead.org>2007-02-06 22:41:48 -0200
committerMauro Carvalho Chehab <mchehab@infradead.org>2007-02-06 22:41:48 -0200
commitc130ca611b7b095a907925540ed1b33b7d8f8272 (patch)
tree5fba8eac597e012cbdadf9630a18e098abc0a68a /v4l2-apps/util/v4l2-ctl.cpp
parenta1082a831b2f317f6eadd4e9b500c53e0457c94b (diff)
parenta2277247714a35325a228e495412628fa1c42ff8 (diff)
downloadmediapointer-dvb-s2-c130ca611b7b095a907925540ed1b33b7d8f8272.tar.gz
mediapointer-dvb-s2-c130ca611b7b095a907925540ed1b33b7d8f8272.tar.bz2
merge: http://linuxtv.org/hg/~mkrufky/v4l-dvb
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'v4l2-apps/util/v4l2-ctl.cpp')
-rw-r--r--v4l2-apps/util/v4l2-ctl.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/v4l2-apps/util/v4l2-ctl.cpp b/v4l2-apps/util/v4l2-ctl.cpp
index a0b14d9fb..9229732ac 100644
--- a/v4l2-apps/util/v4l2-ctl.cpp
+++ b/v4l2-apps/util/v4l2-ctl.cpp
@@ -553,7 +553,8 @@ static void find_controls(int fd)
int id;
while (ioctl(fd, VIDIOC_QUERYCTRL, &qctrl) == 0) {
- if (qctrl.type != V4L2_CTRL_TYPE_CTRL_CLASS) {
+ if (qctrl.type != V4L2_CTRL_TYPE_CTRL_CLASS &&
+ !(qctrl.flags & V4L2_CTRL_FLAG_DISABLED)) {
ctrl_str2id[name2var(qctrl.name)] = qctrl.id;
ctrl_id2str[qctrl.id] = name2var(qctrl.name);
}
@@ -563,12 +564,14 @@ static void find_controls(int fd)
return;
for (id = V4L2_CID_USER_BASE; id < V4L2_CID_LASTP1; id++) {
qctrl.id = id;
- if (ioctl(fd, VIDIOC_QUERYCTRL, &qctrl) == 0)
+ if (ioctl(fd, VIDIOC_QUERYCTRL, &qctrl) == 0 &&
+ !(qctrl.flags & V4L2_CTRL_FLAG_DISABLED))
ctrl_str2id[name2var(qctrl.name)] = qctrl.id;
}
for (qctrl.id = V4L2_CID_PRIVATE_BASE;
ioctl(fd, VIDIOC_QUERYCTRL, &qctrl) == 0; qctrl.id++) {
- ctrl_str2id[name2var(qctrl.name)] = qctrl.id;
+ if (!(qctrl.flags & V4L2_CTRL_FLAG_DISABLED))
+ ctrl_str2id[name2var(qctrl.name)] = qctrl.id;
}
}