Browse Source

V4L/DVB (9942): v4l2-dev: check for parent device in get_index.

get_index requires a valid parent device in order to discover which
indices are in use. Some drivers (e.g. pvrusb2) do not set the parent
device. In that case just return 0.

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

+ 4 - 0
drivers/media/video/v4l2-dev.c

@@ -162,6 +162,10 @@ static int get_index(struct video_device *vdev, int num)
 		return -EINVAL;
 		return -EINVAL;
 	}
 	}
 
 
+	/* Some drivers do not set the parent. In that case always return 0. */
+	if (vdev->parent == NULL)
+		return 0;
+
 	for (i = 0; i < VIDEO_NUM_DEVICES; i++) {
 	for (i = 0; i < VIDEO_NUM_DEVICES; i++) {
 		if (video_device[i] != NULL &&
 		if (video_device[i] != NULL &&
 		    video_device[i] != vdev &&
 		    video_device[i] != vdev &&