2012-05-03 14:40:12

by Emil Goode

[permalink] [raw]
Subject: [PATCH] [media] az6007: Fix dubious use of !x & y

The intent here must be to check if the right most bit
of msgs[i].flags is set and then do the logical negation.

Used macro:
#define I2C_M_RD 0x0001

Sparse warns about this:
drivers/media/dvb/dvb-usb/az6007.c:714:40:
warning: dubious: !x & y

Signed-off-by: Emil Goode <[email protected]>
---
drivers/media/dvb/dvb-usb/az6007.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/media/dvb/dvb-usb/az6007.c b/drivers/media/dvb/dvb-usb/az6007.c
index 4008b9c..0019335a 100644
--- a/drivers/media/dvb/dvb-usb/az6007.c
+++ b/drivers/media/dvb/dvb-usb/az6007.c
@@ -711,7 +711,7 @@ static int az6007_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[],
addr = msgs[i].addr << 1;
if (((i + 1) < num)
&& (msgs[i].len == 1)
- && (!msgs[i].flags & I2C_M_RD)
+ && !(msgs[i].flags & I2C_M_RD)
&& (msgs[i + 1].flags & I2C_M_RD)
&& (msgs[i].addr == msgs[i + 1].addr)) {
/*
--
1.7.9.5