patch-2.4.18 linux/drivers/char/ppdev.c
Next file: linux/drivers/char/rio/rio_linux.c
Previous file: linux/drivers/char/n_hdlc.c
Back to the patch index
Back to the overall index
- Lines: 35
- Date:
Wed Jan 9 16:14:20 2002
- Orig file:
linux.orig/drivers/char/ppdev.c
- Orig date:
Mon Feb 18 20:18:39 2002
diff -Naur -X /home/marcelo/lib/dontdiff linux.orig/drivers/char/ppdev.c linux/drivers/char/ppdev.c
@@ -324,6 +324,7 @@
case PPCLAIM:
{
struct ieee1284_info *info;
+ int ret;
if (pp->flags & PP_CLAIMED) {
printk (KERN_DEBUG CHRDEV
@@ -339,7 +340,10 @@
}
}
- parport_claim_or_block (pp->pdev);
+ ret = parport_claim_or_block (pp->pdev);
+ if (ret < 0)
+ return ret;
+
pp->flags |= PP_CLAIMED;
/* For interrupt-reporting to work, we need to be
@@ -433,8 +437,12 @@
{
unsigned int modes;
- modes = pp->pdev->port->modes;
- if (copy_to_user ((unsigned int *)arg, &modes, sizeof (port->modes))) {
+ port = parport_find_number (minor);
+ if (!port)
+ return -ENODEV;
+
+ modes = port->modes;
+ if (copy_to_user ((unsigned int *)arg, &modes, sizeof (modes))) {
return -EFAULT;
}
return 0;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)