This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/cgit.cgi/media_tree.git tree:

Subject: [media] drxk: better handle errors
Author:  Mauro Carvalho Chehab <[email protected]>
Date:    Fri Jun 5 07:58:52 2015 -0300

As reported by smatch:
        drivers/media/dvb-frontends/drxk_hard.c:3277 dvbt_sc_command() warn: 
missing break? reassigning 'status'

This is basically because the error handling logic there was crappy.

Signed-off-by: Mauro Carvalho Chehab <[email protected]>

 drivers/media/dvb-frontends/drxk_hard.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

---

http://git.linuxtv.org/cgit.cgi/media_tree.git/commit/?id=2f60f13c14b45b311843d2ca09b5e3ef94c16f71

diff --git a/drivers/media/dvb-frontends/drxk_hard.c 
b/drivers/media/dvb-frontends/drxk_hard.c
index ad35264..b1fc4bd 100644
--- a/drivers/media/dvb-frontends/drxk_hard.c
+++ b/drivers/media/dvb-frontends/drxk_hard.c
@@ -3262,6 +3262,7 @@ static int dvbt_sc_command(struct drxk_state *state,
        }
 
        /* Write needed parameters and the command */
+       status = 0;
        switch (cmd) {
                /* All commands using 5 parameters */
                /* All commands using 4 parameters */
@@ -3270,16 +3271,16 @@ static int dvbt_sc_command(struct drxk_state *state,
        case OFDM_SC_RA_RAM_CMD_PROC_START:
        case OFDM_SC_RA_RAM_CMD_SET_PREF_PARAM:
        case OFDM_SC_RA_RAM_CMD_PROGRAM_PARAM:
-               status = write16(state, OFDM_SC_RA_RAM_PARAM1__A, param1);
+               status |= write16(state, OFDM_SC_RA_RAM_PARAM1__A, param1);
                /* All commands using 1 parameters */
        case OFDM_SC_RA_RAM_CMD_SET_ECHO_TIMING:
        case OFDM_SC_RA_RAM_CMD_USER_IO:
-               status = write16(state, OFDM_SC_RA_RAM_PARAM0__A, param0);
+               status |= write16(state, OFDM_SC_RA_RAM_PARAM0__A, param0);
                /* All commands using 0 parameters */
        case OFDM_SC_RA_RAM_CMD_GET_OP_PARAM:
        case OFDM_SC_RA_RAM_CMD_NULL:
                /* Write command */
-               status = write16(state, OFDM_SC_RA_RAM_CMD__A, cmd);
+               status |= write16(state, OFDM_SC_RA_RAM_CMD__A, cmd);
                break;
        default:
                /* Unknown command */

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to