ieee802154/mrf24j40: make sure we do not override return values
If we run into an error during rx we set the the error code in ret, but override it afterwards. Using a different variable for the extra case avoids this situation. CID: 1226982, 1226983 Signed-off-by: Stefan Schmidt <stefan@osg.samsung.com> Cc: Alan Ott <alan@signal11.us> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
9a4d3d4ba1
commit
e5719b661a
|
@ -533,6 +533,7 @@ static int mrf24j40_handle_rx(struct mrf24j40 *devrec)
|
|||
u8 lqi = 0;
|
||||
u8 val;
|
||||
int ret = 0;
|
||||
int ret2;
|
||||
struct sk_buff *skb;
|
||||
|
||||
/* Turn off reception of packets off the air. This prevents the
|
||||
|
@ -569,9 +570,9 @@ static int mrf24j40_handle_rx(struct mrf24j40 *devrec)
|
|||
|
||||
out:
|
||||
/* Turn back on reception of packets off the air. */
|
||||
ret = read_short_reg(devrec, REG_BBREG1, &val);
|
||||
if (ret)
|
||||
return ret;
|
||||
ret2 = read_short_reg(devrec, REG_BBREG1, &val);
|
||||
if (ret2)
|
||||
return ret2;
|
||||
val &= ~0x4; /* Clear RXDECINV */
|
||||
write_short_reg(devrec, REG_BBREG1, val);
|
||||
|
||||
|
|
Loading…
Reference in New Issue