summaryrefslogtreecommitdiff
path: root/src/target
diff options
context:
space:
mode:
authorzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2009-06-13 00:32:40 +0000
committerzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2009-06-13 00:32:40 +0000
commit234324509009067323db2084115d67369653b675 (patch)
treef8b170d6fd78eecdbb593cf153fcf32477d25c06 /src/target
parentcdd8f23b9b2ba4f78c4cb62b80321c20d4a29754 (diff)
downloadopenocd+libswd-234324509009067323db2084115d67369653b675.tar.gz
openocd+libswd-234324509009067323db2084115d67369653b675.tar.bz2
openocd+libswd-234324509009067323db2084115d67369653b675.tar.xz
openocd+libswd-234324509009067323db2084115d67369653b675.zip
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
Diffstat (limited to 'src/target')
-rw-r--r--src/target/target.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/target/target.c b/src/target/target.c
index 6b8f3a0c..b8ee7ab9 100644
--- a/src/target/target.c
+++ b/src/target/target.c
@@ -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;
}