diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2013-02-12 08:22:08 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2013-02-13 17:33:53 -0200 |
commit | b940a2219c9d59171339cc4510462154934fcb49 (patch) | |
tree | 7a8d3a184933522eb8e1a5dfefd53227c50603bf /drivers/media/rc | |
parent | 4db45af5ecdd5a989b5da2e05e37746dffaec0be (diff) | |
download | lwn-b940a2219c9d59171339cc4510462154934fcb49.tar.gz lwn-b940a2219c9d59171339cc4510462154934fcb49.zip |
[media] mceusb: move check earlier to make smatch happy
Smatch complains that "cmdbuf[cmdcount - length]" might go past the end
of the array. It's an easy warning to silence by moving the limit
check earlier.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/rc')
-rw-r--r-- | drivers/media/rc/mceusb.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/media/rc/mceusb.c b/drivers/media/rc/mceusb.c index bdd1ed8e406e..5b5b6e6f79e8 100644 --- a/drivers/media/rc/mceusb.c +++ b/drivers/media/rc/mceusb.c @@ -828,16 +828,16 @@ static int mceusb_tx_ir(struct rc_dev *dev, unsigned *txbuf, unsigned count) (txbuf[i] -= MCE_MAX_PULSE_LENGTH)); } - /* Fix packet length in last header */ - length = cmdcount % MCE_CODE_LENGTH; - cmdbuf[cmdcount - length] -= MCE_CODE_LENGTH - length; - /* Check if we have room for the empty packet at the end */ if (cmdcount >= MCE_CMDBUF_SIZE) { ret = -EINVAL; goto out; } + /* Fix packet length in last header */ + length = cmdcount % MCE_CODE_LENGTH; + cmdbuf[cmdcount - length] -= MCE_CODE_LENGTH - length; + /* All mce commands end with an empty packet (0x80) */ cmdbuf[cmdcount++] = MCE_IRDATA_TRAILER; |