diff options
author | Julia Lawall <julia@diku.dk> | 2009-07-27 06:15:43 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-07-27 11:35:29 -0700 |
commit | 479432344420bc9a868088e346fecb6765e2b674 (patch) | |
tree | 08d57c28a83ba2c633c91df8490e37f6d4adc03f /net/netlabel | |
parent | 463889e27e6f4f097374a6c9de5611f520766dad (diff) | |
download | linux-479432344420bc9a868088e346fecb6765e2b674.tar.gz linux-479432344420bc9a868088e346fecb6765e2b674.tar.bz2 linux-479432344420bc9a868088e346fecb6765e2b674.zip |
net/netlabel: Correct redundant test
entry was tested for NULL near the beginning of the function, followed by a
return, and there is no intervening modification of its value.
A simplified version of the semantic match that finds this problem is as
follows: (http://www.emn.fr/x-info/coccinelle/)
// <smpl>
@r exists@
local idexpression x;
expression E;
position p1,p2;
@@
if (x == NULL || ...) { ... when forall
return ...; }
... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\)
(
*x == NULL
|
*x != NULL
)
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netlabel')
-rw-r--r-- | net/netlabel/netlabel_kapi.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/netlabel/netlabel_kapi.c b/net/netlabel/netlabel_kapi.c index b0e582f2d37a..3ff6f325be3f 100644 --- a/net/netlabel/netlabel_kapi.c +++ b/net/netlabel/netlabel_kapi.c @@ -185,8 +185,7 @@ int netlbl_cfg_unlbl_map_add(const char *domain, return 0; cfg_unlbl_map_add_failure: - if (entry != NULL) - kfree(entry->domain); + kfree(entry->domain); kfree(entry); kfree(addrmap); kfree(map4); @@ -385,8 +384,7 @@ int netlbl_cfg_cipsov4_map_add(u32 doi, cfg_cipsov4_map_add_failure: cipso_v4_doi_putdef(doi_def); - if (entry != NULL) - kfree(entry->domain); + kfree(entry->domain); kfree(entry); kfree(addrmap); kfree(addrinfo); |