diff options
author | Julia Lawall <julia@diku.dk> | 2011-08-20 08:12:41 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-08-20 09:27:04 +0200 |
commit | de75577c8c3ab733f808c65e1a9d55882efde68e (patch) | |
tree | 09c9b6f77ecb2c8e4bdd823c8748606cddf8f3d0 /sound/aoa | |
parent | 1b004d03d8670bdd871e0f297ed20bc510e404de (diff) | |
download | op-kernel-dev-de75577c8c3ab733f808c65e1a9d55882efde68e.zip op-kernel-dev-de75577c8c3ab733f808c65e1a9d55882efde68e.tar.gz |
ALSA: sound/aoa/fabrics/layout.c: remove unneeded kfree
The label outnodev is only used when kzalloc has not yet taken place or has
failed, so there is no need for the call for kfree under this label.
A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)
// <smpl>
@@
identifier x;
expression E1!=0,E2,E3,E4;
statement S;
iterator I;
@@
(
if (...) { ... when != kfree(x)
when != x = E3
when != E3 = x
* return ...;
}
... when != x = E2
when != I(...,x,...) S
if (...) { ... when != x = E4
kfree(x); ... return ...; }
)
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/aoa')
-rw-r--r-- | sound/aoa/fabrics/layout.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/aoa/fabrics/layout.c b/sound/aoa/fabrics/layout.c index 3fd1a7e..552b97a 100644 --- a/sound/aoa/fabrics/layout.c +++ b/sound/aoa/fabrics/layout.c @@ -1073,10 +1073,10 @@ static int aoa_fabric_layout_probe(struct soundbus_dev *sdev) sdev->pcmid = -1; list_del(&ldev->list); layouts_list_items--; + kfree(ldev); outnodev: of_node_put(sound); layout_device = NULL; - kfree(ldev); return -ENODEV; } |