Browse Source

V4L/DVB: video_ioctl2: do not replace arg with NULL for _IO() ioctls

If the ioctl was defined without direction (e.g. _IO('o', 25)), then
the arg as passed to vidioc_default was NULL instead of the original
argument.

Several ioctls in e.g. include/linux/dvb/video.h and audio.h use this type
of ioctl to pass simple numerical values to the driver.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Hans Verkuil 15 years ago
parent
commit
1d94aa369d
1 changed files with 1 additions and 1 deletions
  1. 1 1
      drivers/media/video/v4l2-ioctl.c

+ 1 - 1
drivers/media/video/v4l2-ioctl.c

@@ -2006,7 +2006,7 @@ long video_ioctl2(struct file *file,
 {
 	char	sbuf[128];
 	void    *mbuf = NULL;
-	void	*parg = NULL;
+	void	*parg = (void *)arg;
 	long	err  = -EINVAL;
 	int     is_ext_ctrl;
 	size_t  ctrls_size = 0;