usb: gadget: fix error return code
authorJulia Lawall <Julia.Lawall@lip6.fr>
Sun, 29 Dec 2013 22:47:25 +0000 (23:47 +0100)
committerFelipe Balbi <balbi@ti.com>
Tue, 18 Feb 2014 16:52:53 +0000 (10:52 -0600)
Set the return variable to an error code as done elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}

// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/gadget/printer.c

index bf7a56b6d48ac2c3ebb3acf8920c70d79900d307..92b55bdda566d12c2b39633e44bcf0dbd392c8a7 100644 (file)
@@ -1133,6 +1133,7 @@ static int __init printer_bind_config(struct usb_configuration *c)
                                  NULL, "g_printer");
        if (IS_ERR(dev->pdev)) {
                ERROR(dev, "Failed to create device: g_printer\n");
+               status = PTR_ERR(dev->pdev);
                goto fail;
        }