fs/reiserfs: use an IS_ERR test rather than a NULL test

In case of error, the function open_xa_dir returns an ERR pointer, but
never returns a NULL pointer.  So a NULL test that comes after an IS_ERR
test should be deleted.

The semantic match that finds this problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@match_bad_null_test@
expression x, E;
statement S1,S2;
@@
x = open_xa_dir(...)
... when != x = E
(
*  if (x == NULL && ...) S1 else S2
|
*  if (x == NULL || ...) S1 else S2
)
// </smpl>

Signed-off-by: Julien Brunel <brunel@diku.dk>
Signed-off-by: Julia Lawall <julia@diku.dk>
Cc: Jeff Mahoney <jeffm@suse.com>
Cc: Jan Kara <jack@ucw.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Julien Brunel 2008-10-15 22:04:12 -07:00 committed by Linus Torvalds
parent 6b23ea7679
commit 67b172c097
1 changed files with 1 additions and 1 deletions

View File

@ -155,7 +155,7 @@ static struct dentry *get_xa_file_dentry(const struct inode *inode,
xadir = open_xa_dir(inode, flags); xadir = open_xa_dir(inode, flags);
if (IS_ERR(xadir)) { if (IS_ERR(xadir)) {
return ERR_CAST(xadir); return ERR_CAST(xadir);
} else if (xadir && !xadir->d_inode) { } else if (!xadir->d_inode) {
dput(xadir); dput(xadir);
return ERR_PTR(-ENODATA); return ERR_PTR(-ENODATA);
} }