]> git.sur5r.net Git - openocd/commitdiff
flash: Additional check for NULL in str9xpec enable_turbo
authorFredrik Hederstierna <fredrik.hederstierna@securitas-direct.com>
Wed, 29 Feb 2012 10:16:27 +0000 (10:16 +0000)
committerSpencer Oliver <spen@spen-soft.co.uk>
Tue, 6 Mar 2012 13:32:48 +0000 (13:32 +0000)
Change-Id: Ifde8783b27c64e4a4bbea180cfa2c86f6a9fe49a
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/496
Tested-by: jenkins
Reviewed-by: Øyvind Harboe <oyvindharboe@gmail.com>
src/flash/nor/str9xpec.c

index e89ecf49f0838f86a5c5cfa7e00bef8a4adf77e7..08d97a04b077ef6b4298bbb1518d295622f33ad6 100644 (file)
@@ -199,7 +199,6 @@ static int str9xpec_read_config(struct flash_bank *bank)
        field.out_value = NULL;
        field.in_value = str9xpec_info->options;
 
-
        jtag_add_dr_scan(tap, 1, &field, TAP_IDLE);
        jtag_execute_queue();
 
@@ -1050,20 +1049,24 @@ COMMAND_HANDLER(str9xpec_handle_flash_enable_turbo_command)
 
        str9xpec_info = bank->driver_priv;
 
-       tap0 = str9xpec_info->tap;
-
        /* remove arm core from chain - enter turbo mode */
+       tap0 = str9xpec_info->tap;
+       if (tap0 == NULL) {
+               /* things are *WRONG* */
+               command_print(CMD_CTX, "**STR9FLASH** (tap0) invalid chain?");
+               return ERROR_FAIL;
+       }
        tap1 = tap0->next_tap;
        if (tap1 == NULL) {
                /* things are *WRONG* */
                command_print(CMD_CTX, "**STR9FLASH** (tap1) invalid chain?");
-               return ERROR_OK;
+               return ERROR_FAIL;
        }
        tap2 = tap1->next_tap;
        if (tap2 == NULL) {
                /* things are *WRONG* */
                command_print(CMD_CTX, "**STR9FLASH** (tap2) invalid chain?");
-               return ERROR_OK;
+               return ERROR_FAIL;
        }
 
        /* enable turbo mode - TURBO-PROG-ENABLE */