COMMAND_HANDLER(handle_targets_command)
{
- struct target *target = all_targets;
-
if (CMD_ARGC == 1)
{
- target = get_target(CMD_ARGV[0]);
+ struct target *target = get_target(CMD_ARGV[0]);
if (target == NULL) {
command_print(CMD_CTX,"Target: %s is unknown, try one of:\n", CMD_ARGV[0]);
goto DumpTargets;
CMD_CTX->current_target = target->target_number;
return ERROR_OK;
}
-DumpTargets:
+DumpTargets:;
- target = all_targets;
+ struct target *target = all_targets;
command_print(CMD_CTX, " TargetName Type Endian TapName State ");
command_print(CMD_CTX, "-- ------------------ ---------- ------ ------------------ ------------");
while (target)
}
}
+ assert(reg != NULL); /* give clang a hint that we *know* reg is != NULL here */
+
/* display a register */
if ((CMD_ARGC == 1) || ((CMD_ARGC == 2) && !((CMD_ARGV[1][0] >= '0') && (CMD_ARGV[1][0] <= '9'))))
{
if (CMD_ARGC == 2)
{
uint8_t *buf = malloc(DIV_ROUND_UP(reg->size, 8));
+ if (buf == NULL)
+ return ERROR_FAIL;
str_to_buf(CMD_ARGV[1], strlen(CMD_ARGV[1]), buf, reg->size, 0);
reg->type->set(reg, buf);
/* hopefully it is safe to cache! We want to stop/restart as quickly as possible. */
struct reg *reg = register_get_by_name(target->reg_cache, "pc", 1);
+ int retval = ERROR_OK;
for (;;)
{
- int retval;
target_poll(target);
if (target->state == TARGET_HALTED)
{
}
free(samples);
- return ERROR_OK;
+ return retval;
}
static int new_int_array_element(Jim_Interp * interp, const char *varname, int idx, uint32_t val)
Jim_SetResult(interp, Jim_NewEmptyStringObj(interp));
Jim_AppendStrings(interp, Jim_GetResult(interp), "mem2array: cannot read memory", NULL);
e = JIM_ERR;
- len = 0;
+ break;
} else {
v = 0; /* shut up gcc */
for (i = 0 ;i < count ;i++, n++) {
Jim_SetResult(interp, Jim_NewEmptyStringObj(interp));
- return JIM_OK;
+ return e;
}
static int get_int_array_element(Jim_Interp * interp, const char *varname, int idx, uint32_t *val)
Jim_SetResult(interp, Jim_NewEmptyStringObj(interp));
Jim_AppendStrings(interp, Jim_GetResult(interp), "array2mem: cannot read memory", NULL);
e = JIM_ERR;
- len = 0;
+ break;
}
}
Jim_SetResult(interp, Jim_NewEmptyStringObj(interp));
- return JIM_OK;
+ return e;
}
/* FIX? should we propagate errors here rather than printing them
free((void *)(target->variant));
}
e = Jim_GetOpt_String(goi, &cp, NULL);
+ if (e != JIM_OK)
+ return e;
target->variant = strdup(cp);
} else {
if (goi->argc != 0) {
/* TYPE */
e = Jim_GetOpt_String(goi, &cp2, NULL);
+ if (e != JIM_OK)
+ return e;
cp = cp2;
/* now does target type exist */
for (x = 0 ; target_types[x] ; x++) {
const char *targetname;
int retval,len;
struct target *target;
- struct target_list *head, *curr, *new;
+ struct target_list *head, *curr;
curr = (struct target_list*) NULL;
head = (struct target_list*) NULL;
- new = (struct target_list*) NULL;
-
+
retval = 0;
LOG_DEBUG("%d",argc);
/* argv[1] = target to associate in smp
LOG_DEBUG("%s ",targetname);
if (target)
{
+ struct target_list *new;
new=malloc(sizeof(struct target_list));
new->target = target;
new->next = (struct target_list*)NULL;