[media] lgdt330x: fix behavior of read errors in lgdt330x_read_ucblocks
authorMichael Krufky <mkrufky@linuxtv.org>
Thu, 15 Dec 2011 13:16:09 +0000 (10:16 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 30 Dec 2011 17:57:29 +0000 (15:57 -0200)
initialize *ucblocks to zero & fix the following build warning:

lgdt330x.c: In function "lgdt330x_read_ucblocks":
lgdt330x.c:288:6: warning: variable "err" set but not used
[-Wunused-but-set-variable]

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/frontends/lgdt330x.c

index 43971e6..d458271 100644 (file)
@@ -288,6 +288,8 @@ static int lgdt330x_read_ucblocks(struct dvb_frontend* fe, u32* ucblocks)
        int err;
        u8 buf[2];
 
+       *ucblocks = 0;
+
        switch (state->config->demod_chip) {
        case LGDT3302:
                err = i2c_read_demod_bytes(state, LGDT3302_PACKET_ERR_COUNTER1,
@@ -302,6 +304,8 @@ static int lgdt330x_read_ucblocks(struct dvb_frontend* fe, u32* ucblocks)
                       "Only LGDT3302 and LGDT3303 are supported chips.\n");
                err = -ENODEV;
        }
+       if (err < 0)
+               return err;
 
        *ucblocks = (buf[0] << 8) | buf[1];
        return 0;