summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNickolai Zeldovich <nickolai@csail.mit.edu>2013-01-05 14:14:51 -0500
committerAnton Vorontsov <anton@enomsg.org>2013-01-06 14:34:26 -0800
commitc4f3422630464d231c14c8b9e585c23fcfe3436c (patch)
tree4aef38e6b144526729768b416ee496bb0699afff
parent00edfc65c2ce7d039ea45f1b3cc120db01ddcce9 (diff)
downloadlinux-c4f3422630464d231c14c8b9e585c23fcfe3436c.tar.bz2
da9052-battery: Avoid out-of-range array access
Avoid accessing vc_tbl_ref[3], which is one past the end of that array, in da9052_determine_vc_tbl_index(), by adjusting the loop bound. (Hint: there is 'i + 1' inside the loop.) Signed-off-by: Nickolai Zeldovich <nickolai@csail.mit.edu> Signed-off-by: Anton Vorontsov <anton@enomsg.org>
-rw-r--r--drivers/power/da9052-battery.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/power/da9052-battery.c b/drivers/power/da9052-battery.c
index 3c5c2e459d73..08193feb3b08 100644
--- a/drivers/power/da9052-battery.c
+++ b/drivers/power/da9052-battery.c
@@ -337,7 +337,7 @@ static unsigned char da9052_determine_vc_tbl_index(unsigned char adc_temp)
if (adc_temp > vc_tbl_ref[DA9052_VC_TBL_REF_SZ - 1])
return DA9052_VC_TBL_REF_SZ - 1;
- for (i = 0; i < DA9052_VC_TBL_REF_SZ; i++) {
+ for (i = 0; i < DA9052_VC_TBL_REF_SZ - 1; i++) {
if ((adc_temp > vc_tbl_ref[i]) &&
(adc_temp <= DA9052_MEAN(vc_tbl_ref[i], vc_tbl_ref[i + 1])))
return i;