aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/rc
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-02-12 06:22:08 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2013-02-13 14:33:53 -0500
commitb940a2219c9d59171339cc4510462154934fcb49 (patch)
tree7a8d3a184933522eb8e1a5dfefd53227c50603bf /drivers/media/rc
parent4db45af5ecdd5a989b5da2e05e37746dffaec0be (diff)
[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.c8
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)
828 (txbuf[i] -= MCE_MAX_PULSE_LENGTH)); 828 (txbuf[i] -= MCE_MAX_PULSE_LENGTH));
829 } 829 }
830 830
831 /* Fix packet length in last header */
832 length = cmdcount % MCE_CODE_LENGTH;
833 cmdbuf[cmdcount - length] -= MCE_CODE_LENGTH - length;
834
835 /* Check if we have room for the empty packet at the end */ 831 /* Check if we have room for the empty packet at the end */
836 if (cmdcount >= MCE_CMDBUF_SIZE) { 832 if (cmdcount >= MCE_CMDBUF_SIZE) {
837 ret = -EINVAL; 833 ret = -EINVAL;
838 goto out; 834 goto out;
839 } 835 }
840 836
837 /* Fix packet length in last header */
838 length = cmdcount % MCE_CODE_LENGTH;
839 cmdbuf[cmdcount - length] -= MCE_CODE_LENGTH - length;
840
841 /* All mce commands end with an empty packet (0x80) */ 841 /* All mce commands end with an empty packet (0x80) */
842 cmdbuf[cmdcount++] = MCE_IRDATA_TRAILER; 842 cmdbuf[cmdcount++] = MCE_IRDATA_TRAILER;
843 843