This patch fixes an off-by-one error spotted by the Coverity checker.
Signed-off-by: Adrian Bunk <[email protected]>
---
--- linux-2.6/drivers/media/dvb/frontends/tda18271-common.c.old 2008-01-28 16:27:55.000000000 +0200
+++ linux-2.6/drivers/media/dvb/frontends/tda18271-common.c 2008-01-28 16:28:38.000000000 +0200
@@ -166,17 +166,17 @@ int tda18271_read_extended(struct dvb_fr
/* read all registers */
ret = i2c_transfer(priv->i2c_adap, msg, 2);
tda18271_i2c_gate_ctrl(fe, 0);
if (ret != 2)
tda_err("ERROR: i2c_transfer returned: %d\n", ret);
- for (i = 0; i <= TDA18271_NUM_REGS; i++) {
+ for (i = 0; i < TDA18271_NUM_REGS; i++) {
/* don't update write-only registers */
if ((i != R_EB9) &&
(i != R_EB16) &&
(i != R_EB17) &&
(i != R_EB19) &&
(i != R_EB20))
regs[i] = regdump[i];
}
Adrian Bunk wrote:
> This patch fixes an off-by-one error spotted by the Coverity checker.
>
> Signed-off-by: Adrian Bunk <[email protected]>
>
Reviewed-by: Michael Krufky <[email protected]>
Thank you, Adrian.
Mauro, please merge this and queue for upstream.
Cheers,
Mike
> ---
> --- linux-2.6/drivers/media/dvb/frontends/tda18271-common.c.old
2008-01-28 16:27:55.000000000 +0200
> +++ linux-2.6/drivers/media/dvb/frontends/tda18271-common.c 2008-01-28
16:28:38.000000000 +0200
> @@ -166,17 +166,17 @@ int tda18271_read_extended(struct dvb_fr
> /* read all registers */
> ret = i2c_transfer(priv->i2c_adap, msg, 2);
>
> tda18271_i2c_gate_ctrl(fe, 0);
>
> if (ret != 2)
> tda_err("ERROR: i2c_transfer returned: %d\n", ret);
>
> - for (i = 0; i <= TDA18271_NUM_REGS; i++) {
> + for (i = 0; i < TDA18271_NUM_REGS; i++) {
> /* don't update write-only registers */
> if ((i != R_EB9) &&
> (i != R_EB16) &&
> (i != R_EB17) &&
> (i != R_EB19) &&
> (i != R_EB20))
> regs[i] = regdump[i];
> }
>
>