Use parse_uint in get_target to ensure target id is parsed properly.

git-svn-id: svn://svn.berlios.de/openocd/trunk@2225 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
zwelch 2009-06-13 00:32:40 +00:00
parent cdd8f23b9b
commit 2343245090

View File

@ -323,8 +323,6 @@ void target_buffer_set_u8(target_t *target, u8 *buffer, u8 value)
target_t *get_target(const char *id)
{
target_t *target;
char *endptr;
int num;
/* try as tcltarget name */
for (target = all_targets; target; target = target->next) {
@ -335,12 +333,12 @@ target_t *get_target(const char *id)
}
/* no match, try as number */
num = strtoul(id, &endptr, 0);
if (*endptr != 0)
unsigned num;
if (parse_uint(id, &num) != ERROR_OK)
return NULL;
for (target = all_targets; target; target = target->next) {
if (target->target_number == num)
if (target->target_number == (int)num)
return target;
}