public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] v4l2: fill reserved fields of VIDIOC_ENUMAUDIO also
@ 2009-03-25 16:51 Németh Márton
  2009-03-27 16:17 ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 5+ messages in thread
From: Németh Márton @ 2009-03-25 16:51 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, linux-media; +Cc: LKML

From: Márton Németh <nm127@freemail.hu>

When enumerating audio inputs with VIDIOC_ENUMAUDIO the gspca_sunplus driver
does not fill the reserved fields of the struct v4l2_audio with zeros as
required by V4L2 API revision 0.24 [1]. Add the missing initializations to
the V4L2 framework.

The patch was tested with v4l-test 0.10 [2] with gspca_sunplus driver and
with Trust 610 LCD POWERC@M ZOOM webcam.

References:
[1] V4L2 API specification, revision 0.24
    http://v4l2spec.bytesex.org/spec/r8242.htm

[2] v4l-test: Test environment for Video For Linux Two API
    http://v4l-test.sourceforge.net/

Signed-off-by: Márton Németh <nm127@freemail.hu>
---
--- linux-2.6.29/drivers/media/video/v4l2-ioctl.c.orig	2009-03-24 00:12:14.000000000 +0100
+++ linux-2.6.29/drivers/media/video/v4l2-ioctl.c	2009-03-25 17:11:27.000000000 +0100
@@ -1363,9 +1363,13 @@ static long __video_do_ioctl(struct file
 	case VIDIOC_ENUMAUDIO:
 	{
 		struct v4l2_audio *p = arg;
+		__u32 index = p->index;

 		if (!ops->vidioc_enumaudio)
 			break;
+
+		memset(p, 0, sizeof(*p));
+		p->index = index;
 		ret = ops->vidioc_enumaudio(file, fh, p);
 		if (!ret)
 			dbgarg(cmd, "index=%d, name=%s, capability=0x%x, "

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-03-27 21:12 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-25 16:51 [PATCH] v4l2: fill reserved fields of VIDIOC_ENUMAUDIO also Németh Márton
2009-03-27 16:17 ` Mauro Carvalho Chehab
2009-03-27 19:45   ` Trent Piepho
2009-03-27 20:34     ` Hans Verkuil
2009-03-27 21:12       ` Trent Piepho

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox