diff options
author | Michael Krufky <mkrufky@linuxtv.org> | 2007-05-21 13:56:17 -0400 |
---|---|---|
committer | Michael Krufky <mkrufky@linuxtv.org> | 2007-05-21 13:56:17 -0400 |
commit | 8a50e9a266bb50a040473fe27c579175b8251b5f (patch) | |
tree | 77622ba15f70decf44025572a77140c42f91acc7 /linux/drivers/media/video/cx88/cx88-blackbird.c | |
parent | f388b214feedc1a8e2013852cc707f17e89fe966 (diff) | |
download | mediapointer-dvb-s2-8a50e9a266bb50a040473fe27c579175b8251b5f.tar.gz mediapointer-dvb-s2-8a50e9a266bb50a040473fe27c579175b8251b5f.tar.bz2 |
cx88-blackbird: fix vidioc_g_tuner never ending list of tuners
From: Jelle Foks <jelle@foks.8m.com>
v4l-info and other programs would loop indefinitely while querying the
tuners for cx88-blackbird cards.
The cause was that vidioc_g_tuner didn't return an error value for
qctrl->id != 0, making the application think there is a never ending
list of tuners...
This patch adds the same index check as done in vidioc_g_tuner() in
cx88-video.
Signed-off-by: Jelle Foks <jelle@foks.8m.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Diffstat (limited to 'linux/drivers/media/video/cx88/cx88-blackbird.c')
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-blackbird.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-blackbird.c b/linux/drivers/media/video/cx88/cx88-blackbird.c index 9103d9567..97e207d56 100644 --- a/linux/drivers/media/video/cx88/cx88-blackbird.c +++ b/linux/drivers/media/video/cx88/cx88-blackbird.c @@ -1057,6 +1057,8 @@ static int vidioc_g_tuner (struct file *file, void *priv, if (unlikely(UNSET == core->tuner_type)) return -EINVAL; + if (0 != t->index) + return -EINVAL; strcpy(t->name, "Television"); t->type = V4L2_TUNER_ANALOG_TV; |