diff options
author | Julien Brunel <brunel@diku.dk> | 2008-10-16 01:04:12 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-16 14:21:46 -0400 |
commit | 67b172c097177835fbf5b0666885c4059a4f67ff (patch) | |
tree | 2885ade2f6f3fdaae986f4724390adc404c42a2f /fs | |
parent | 6b23ea7679978e6e1148aae9245021dfbcd989d7 (diff) |
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>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/reiserfs/xattr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/reiserfs/xattr.c b/fs/reiserfs/xattr.c index bb3cb5b7cdb2..ad92461cbfc3 100644 --- a/fs/reiserfs/xattr.c +++ b/fs/reiserfs/xattr.c | |||
@@ -155,7 +155,7 @@ static struct dentry *get_xa_file_dentry(const struct inode *inode, | |||
155 | xadir = open_xa_dir(inode, flags); | 155 | xadir = open_xa_dir(inode, flags); |
156 | if (IS_ERR(xadir)) { | 156 | if (IS_ERR(xadir)) { |
157 | return ERR_CAST(xadir); | 157 | return ERR_CAST(xadir); |
158 | } else if (xadir && !xadir->d_inode) { | 158 | } else if (!xadir->d_inode) { |
159 | dput(xadir); | 159 | dput(xadir); |
160 | return ERR_PTR(-ENODATA); | 160 | return ERR_PTR(-ENODATA); |
161 | } | 161 | } |