From: Tobin Harding Date: Fri, 6 Oct 2017 02:33:44 +0000 (+1100) Subject: Remove unnecessary equality check X-Git-Tag: zfs-0.7.3~15 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=80cc2f6111d4300d5293f7d95d4b0c77d9df8bd9;p=zfs Remove unnecessary equality check Currently `if` statement includes an assignment (from a function return value) and a equality check. The parenthesis are in the incorrect place, currently the code clobbers the function return value because of this. We can fix this by simplifying the `if` statement. `if (foo != 0)` can be more succinctly expressed as `if (foo)` Remove the equality check, add parenthesis to correct the statement. Reviewed-by: Brian Behlendorf Reviewed-by: George Melikov Reviewed-by: Chris Dunlop Signed-off-by: Tobin C. Harding Closes #6685 Close #6719 --- diff --git a/module/zfs/zfs_vnops.c b/module/zfs/zfs_vnops.c index 259bfb309..a88f2482e 100644 --- a/module/zfs/zfs_vnops.c +++ b/module/zfs/zfs_vnops.c @@ -4562,7 +4562,7 @@ convoff(struct inode *ip, flock64_t *lckdat, int whence, offset_t offset) int error; if ((lckdat->l_whence == 2) || (whence == 2)) { - if ((error = zfs_getattr(ip, &vap, 0, CRED()) != 0)) + if ((error = zfs_getattr(ip, &vap, 0, CRED()))) return (error); }