This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/v4l-dvb.git tree:

Subject: V4L/DVB: drivers/media/dvb/dvb-usb/dib0700: fix return values
Author:  Daniel Mack <[email protected]>
Date:    Thu Jul 1 01:08:58 2010 -0300

Propagte correct error values instead of returning -1 which just means
-EPERM ("Permission denied")

Signed-off-by: Daniel Mack <[email protected]>
Signed-off-by: Douglas Schilling Landgraf <[email protected]>
Cc: Patrick Boettcher <[email protected]>
Signed-off-by: Mauro Carvalho Chehab <[email protected]>

 drivers/media/dvb/dvb-usb/dib0700_core.c |   16 +++++++---------
 1 files changed, 7 insertions(+), 9 deletions(-)

---

http://git.linuxtv.org/v4l-dvb.git?a=commitdiff;h=d64d718f841e6e3621e25b0c765c5f726fe1f85b

diff --git a/drivers/media/dvb/dvb-usb/dib0700_core.c 
b/drivers/media/dvb/dvb-usb/dib0700_core.c
index 4f961d2..d2dabac 100644
--- a/drivers/media/dvb/dvb-usb/dib0700_core.c
+++ b/drivers/media/dvb/dvb-usb/dib0700_core.c
@@ -640,10 +640,10 @@ int dib0700_rc_setup(struct dvb_usb_device *d)
                return 0;
 
        /* Set the IR mode */
-       i = dib0700_ctrl_wr(d, rc_setup, 3);
-       if (i<0) {
+       i = dib0700_ctrl_wr(d, rc_setup, sizeof(rc_setup));
+       if (i < 0) {
                err("ir protocol setup failed");
-               return -1;
+               return i;
        }
 
        if (st->fw_version < 0x10200)
@@ -653,14 +653,14 @@ int dib0700_rc_setup(struct dvb_usb_device *d)
        purb = usb_alloc_urb(0, GFP_KERNEL);
        if (purb == NULL) {
                err("rc usb alloc urb failed\n");
-               return -1;
+               return -ENOMEM;
        }
 
        purb->transfer_buffer = kzalloc(RC_MSG_SIZE_V1_20, GFP_KERNEL);
        if (purb->transfer_buffer == NULL) {
                err("rc kzalloc failed\n");
                usb_free_urb(purb);
-               return -1;
+               return -ENOMEM;
        }
 
        purb->status = -EINPROGRESS;
@@ -669,12 +669,10 @@ int dib0700_rc_setup(struct dvb_usb_device *d)
                          dib0700_rc_urb_completion, d);
 
        ret = usb_submit_urb(purb, GFP_ATOMIC);
-       if (ret != 0) {
+       if (ret)
                err("rc submit urb failed\n");
-               return -1;
-       }
 
-       return 0;
+       return ret;
 }
 
 static int dib0700_probe(struct usb_interface *intf,

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to