summaryrefslogtreecommitdiffstats
path: root/drivers/media/rc
diff options
context:
space:
mode:
authorSean Young2013-07-31 00:00:00 +0200
committerMauro Carvalho Chehab2013-08-22 16:45:32 +0200
commit38e35a85284b9cce271ff43a849d3676a46f8512 (patch)
tree6352a4acc116f9f01f2a30b03d8a5efbdc9676c6 /drivers/media/rc
parent[media] smiapp: Call the clock "ext_clk" (diff)
downloadkernel-qcow2-linux-38e35a85284b9cce271ff43a849d3676a46f8512.tar.gz
kernel-qcow2-linux-38e35a85284b9cce271ff43a849d3676a46f8512.tar.xz
kernel-qcow2-linux-38e35a85284b9cce271ff43a849d3676a46f8512.zip
[media] redrat3: ensure whole packet is read
The length in the header excludes the header itself, so we're getting spurious readings. Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/rc')
-rw-r--r--drivers/media/rc/redrat3.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/rc/redrat3.c b/drivers/media/rc/redrat3.c
index 0042367b060c..ccd267f131fa 100644
--- a/drivers/media/rc/redrat3.c
+++ b/drivers/media/rc/redrat3.c
@@ -663,7 +663,8 @@ static int redrat3_get_ir_data(struct redrat3_dev *rr3, unsigned len)
goto out;
}
- if (rr3->bytes_read < be16_to_cpu(rr3->irdata.header.length))
+ if (rr3->bytes_read < be16_to_cpu(rr3->irdata.header.length) +
+ sizeof(struct redrat3_header))
/* we're still accumulating data */
return 0;