fix error handling in flash fill
git-svn-id: svn://svn.berlios.de/openocd/trunk@1074 b42882b7-edfa-0310-969c-e2dbd0fdcd60__archive__
parent
e2f941b546
commit
824c270142
|
@ -792,20 +792,16 @@ int handle_flash_fill_command(struct command_context_s *cmd_ctx, char *cmd, char
|
||||||
for (wrote=0; wrote<(count*wordsize); wrote+=sizeof(chunk))
|
for (wrote=0; wrote<(count*wordsize); wrote+=sizeof(chunk))
|
||||||
{
|
{
|
||||||
int cur_size = MIN( (count*wordsize - wrote) , 1024 );
|
int cur_size = MIN( (count*wordsize - wrote) , 1024 );
|
||||||
if (err == ERROR_OK)
|
flash_bank_t *bank;
|
||||||
|
bank = get_flash_bank_by_addr(target, address);
|
||||||
|
if(bank == NULL)
|
||||||
{
|
{
|
||||||
flash_bank_t *bank;
|
return ERROR_FAIL;
|
||||||
bank = get_flash_bank_by_addr(target, address);
|
|
||||||
if(bank == NULL)
|
|
||||||
{
|
|
||||||
err = ERROR_FAIL;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
err = flash_driver_write(bank, chunk, address - bank->base + wrote, cur_size);
|
|
||||||
wrote += cur_size;
|
|
||||||
}
|
}
|
||||||
|
err = flash_driver_write(bank, chunk, address - bank->base + wrote, cur_size);
|
||||||
if (err!=ERROR_OK)
|
if (err!=ERROR_OK)
|
||||||
break;
|
return err;
|
||||||
|
wrote += cur_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((retval = duration_stop_measure(&duration, &duration_text)) != ERROR_OK)
|
if ((retval = duration_stop_measure(&duration, &duration_text)) != ERROR_OK)
|
||||||
|
|
Loading…
Reference in New Issue