We shouldn't really compare &new->h with anything when new ==NULL, and gather
three different if statements that all start
if (rv ...
into one large if.
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
rv = auth_domain_lookup(name, NULL);
while(1) {
- if (rv != &new->h) {
- if (new) auth_domain_put(&new->h);
+ if (rv) {
+ if (new && rv != &new->h)
+ auth_domain_put(&new->h);
+
+ if (rv->flavour != &svcauth_unix) {
+ auth_domain_put(rv);
+ return NULL;
+ }
return rv;
}
- if (rv && rv->flavour != &svcauth_unix) {
- auth_domain_put(rv);
- return NULL;
- }
- if (rv)
- return rv;
new = kmalloc(sizeof(*new), GFP_KERNEL);
if (new == NULL)