diff options
author | Zachary T Welch <zw@superlucidity.net> | 2009-10-24 01:22:58 -0700 |
---|---|---|
committer | Zachary T Welch <zw@superlucidity.net> | 2009-11-05 18:03:19 -0800 |
commit | 6e542407e7927ec589824b56ba706ed02d0ba97f (patch) | |
tree | 1026b225c45a0038085a804d9306a5b6b5ef0bd8 /src/pld | |
parent | 2b78a4e82b1845ee7cc89f6e31d7b49e9299cb32 (diff) | |
download | openocd+libswd-6e542407e7927ec589824b56ba706ed02d0ba97f.tar.gz openocd+libswd-6e542407e7927ec589824b56ba706ed02d0ba97f.tar.bz2 openocd+libswd-6e542407e7927ec589824b56ba706ed02d0ba97f.tar.xz openocd+libswd-6e542407e7927ec589824b56ba706ed02d0ba97f.zip |
Improve pld command argument parsing.
Diffstat (limited to 'src/pld')
-rw-r--r-- | src/pld/pld.c | 13 | ||||
-rw-r--r-- | src/pld/virtex2.c | 4 |
2 files changed, 11 insertions, 6 deletions
diff --git a/src/pld/pld.c b/src/pld/pld.c index 391fb761..2bfb4016 100644 --- a/src/pld/pld.c +++ b/src/pld/pld.c @@ -175,7 +175,9 @@ static int handle_pld_load_command(struct command_context_s *cmd_ctx, return ERROR_OK; } - p = get_pld_device_by_num(strtoul(args[0], NULL, 0)); + unsigned dev_id; + COMMAND_PARSE_NUMBER(uint, args[0], dev_id); + p = get_pld_device_by_num(dev_id); if (!p) { command_print(cmd_ctx, "pld device '#%s' is out of bounds", args[0]); @@ -184,19 +186,20 @@ static int handle_pld_load_command(struct command_context_s *cmd_ctx, if ((retval = p->driver->load(p, args[1])) != ERROR_OK) { - command_print(cmd_ctx, "failed loading file %s to pld device %lu", - args[1], strtoul(args[0], NULL, 0)); + command_print(cmd_ctx, "failed loading file %s to pld device %u", + args[1], dev_id); switch (retval) { } + return retval; } else { gettimeofday(&end, NULL); timeval_subtract(&duration, &end, &start); - command_print(cmd_ctx, "loaded file %s to pld device %lu in %jis %jius", - args[1], strtoul(args[0], NULL, 0), + command_print(cmd_ctx, "loaded file %s to pld device %u in %jis %jius", + args[1], dev_id, (intmax_t)duration.tv_sec, (intmax_t)duration.tv_usec); } diff --git a/src/pld/virtex2.c b/src/pld/virtex2.c index 831503a5..28cae6ca 100644 --- a/src/pld/virtex2.c +++ b/src/pld/virtex2.c @@ -202,7 +202,9 @@ static int virtex2_handle_read_stat_command(struct command_context_s *cmd_ctx, return ERROR_OK; } - device = get_pld_device_by_num(strtoul(args[0], NULL, 0)); + unsigned dev_id; + COMMAND_PARSE_NUMBER(uint, args[0], dev_id); + device = get_pld_device_by_num(dev_id); if (!device) { command_print(cmd_ctx, "pld device '#%s' is out of bounds", args[0]); |