From 99cd25ce10249c7f9d7172fe2ed266b023cd3323 Mon Sep 17 00:00:00 2001 From: Axel Lin Date: Thu, 4 Aug 2011 16:18:11 +0800 Subject: regulator: 88pm8607: Fix off-by-one value range checking in the case of no id is matched In the case of no id is matched, the variable i is equal to ARRAY_SIZE(pm8607_regulator_info). Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood diff --git a/drivers/regulator/88pm8607.c b/drivers/regulator/88pm8607.c index d63fddb..e821b21 100644 --- a/drivers/regulator/88pm8607.c +++ b/drivers/regulator/88pm8607.c @@ -412,7 +412,7 @@ static int __devinit pm8607_regulator_probe(struct platform_device *pdev) if (info->desc.id == res->start) break; } - if ((i < 0) || (i > PM8607_ID_RG_MAX)) { + if (i == ARRAY_SIZE(pm8607_regulator_info)) { dev_err(&pdev->dev, "Failed to find regulator %llu\n", (unsigned long long)res->start); return -EINVAL; -- cgit v0.10.2