patch-2.4.27 linux-2.4.27/drivers/media/video/videodev.c
Next file: linux-2.4.27/drivers/message/fusion/isense.c
Previous file: linux-2.4.27/drivers/media/video/cpia.c
Back to the patch index
Back to the overall index
- Lines: 30
- Date:
2004-08-07 16:26:04.898356803 -0700
- Orig file:
linux-2.4.26/drivers/media/video/videodev.c
- Orig date:
2003-11-28 10:26:20.000000000 -0800
diff -urN linux-2.4.26/drivers/media/video/videodev.c linux-2.4.27/drivers/media/video/videodev.c
@@ -553,7 +553,14 @@
/* pick a minor number */
down(&videodev_lock);
- if (-1 == nr) {
+ if (nr >= 0 && nr < end-base) {
+ /* use the one the driver asked for */
+ i = base+nr;
+ if (NULL != video_device[i]) {
+ up(&videodev_lock);
+ return -ENFILE;
+ }
+ } else {
/* use first free */
for(i=base;i<end;i++)
if (NULL == video_device[i])
@@ -562,13 +569,6 @@
up(&videodev_lock);
return -ENFILE;
}
- } else {
- /* use the one the driver asked for */
- i = base+nr;
- if (NULL != video_device[i]) {
- up(&videodev_lock);
- return -ENFILE;
- }
}
video_device[i]=vfd;
vfd->minor=i;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)