summaryrefslogtreecommitdiff
path: root/src/helper
diff options
context:
space:
mode:
authorntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-02-19 19:26:17 +0000
committerntfreak <ntfreak@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-02-19 19:26:17 +0000
commit5c0e8efa051f4e266add8b3685020970fe394a4c (patch)
tree261d72e1ce7002f3b331b93ee6d8fa8e01de545c /src/helper
parentb02d64a1bff5bbbb56c3119e336e1530888c04bd (diff)
downloadopenocd_libswd-5c0e8efa051f4e266add8b3685020970fe394a4c.tar.gz
openocd_libswd-5c0e8efa051f4e266add8b3685020970fe394a4c.tar.bz2
openocd_libswd-5c0e8efa051f4e266add8b3685020970fe394a4c.tar.xz
openocd_libswd-5c0e8efa051f4e266add8b3685020970fe394a4c.zip
- Fixed bug in pathmove for XScale
- added virtual address to working_area. - Improved error messages in a number of places - Added ERROR_COMMAND_SYNTAX_ERROR that commands can return to have syntax printed - Added help for some config commands - Added verification of sw breakpoints with ERROR() message - Removed a couple of exit()'s and replaced with error message - cosmetic fix to armv4_5.c, easier to read - added polymorphic(with default) virt2phys and mmu enable query function to target.h - added virt2phys command that uses target->type->virt2phys() fn Thanks to Øyvind Harboe git-svn-id: svn://svn.berlios.de/openocd/trunk@310 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/helper')
-rw-r--r--src/helper/command.c10
-rw-r--r--src/helper/command.h1
2 files changed, 10 insertions, 1 deletions
diff --git a/src/helper/command.c b/src/helper/command.c
index df12ffc1..87ddf839 100644
--- a/src/helper/command.c
+++ b/src/helper/command.c
@@ -37,6 +37,8 @@
#include <stdio.h>
#include <unistd.h>
+void command_print_help_line(command_context_t* context, struct command_s *command, int indent);
+
int handle_sleep_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
int build_unique_lengths(command_context_t *context, command_t *commands)
@@ -345,7 +347,13 @@ int find_and_run_command(command_context_t *context, command_t *commands, char *
}
else
{
- return c->handler(context, c->name, words + start_word + 1, num_words - start_word - 1);
+ int retval = c->handler(context, c->name, words + start_word + 1, num_words - start_word - 1);
+ if (retval == ERROR_COMMAND_SYNTAX_ERROR)
+ {
+ command_print(context, "Syntax error:");
+ command_print_help_line(context, c, 0);
+ }
+ return retval;
}
}
else
diff --git a/src/helper/command.h b/src/helper/command.h
index 262786a8..de90d4ae 100644
--- a/src/helper/command.h
+++ b/src/helper/command.h
@@ -63,5 +63,6 @@ extern int command_run_file(command_context_t *context, FILE *file, enum command
#define ERROR_COMMAND_CLOSE_CONNECTION (-600)
+#define ERROR_COMMAND_SYNTAX_ERROR (-601)
#endif /* COMMAND_H */