staging: emxx_udc: test returned value
authorJulia Lawall <Julia.Lawall@lip6.fr>
Sat, 4 Apr 2015 14:59:30 +0000 (16:59 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Apr 2015 14:52:21 +0000 (16:52 +0200)
Put NULL test on the result of the previous call instead on one of its
arguments.  A simplified version of the semantic match that finds this
problem is as follows (http://coccinelle.lip6.fr/):

// <smpl>
r@
expression *e1;
expression *e2;
identifier f;
statement S1,S2;
@@

e1 = f(...,e2,...);
(
if (e1 == NULL || ...) S1 else S2
|
*if (e2 == NULL || ...) S1 else S2
)
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/emxx_udc/emxx_udc.c

index fbf82bc735cff6c6249ddae0c923b29e640699f8..7de1e9ec2267401c142064725ecccfec7c41f7f9 100644 (file)
@@ -2998,7 +2998,7 @@ static void  nbu2ss_ep_fifo_flush(struct usb_ep *_ep)
        }
 
        ep = container_of(_ep, struct nbu2ss_ep, ep);
-       if (!_ep) {
+       if (!ep) {
                pr_err("udc: %s, bad ep\n", __func__);
                return;
        }