summaryrefslogtreecommitdiff
path: root/src/helper/command.c
diff options
context:
space:
mode:
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-08-07 16:37:20 +0000
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-08-07 16:37:20 +0000
commitc76b0618d7457a68b464a64e91ed98dc2482b262 (patch)
tree05cc3e57e9413d4e43908ceec7e678470f536fc5 /src/helper/command.c
parent2cec23fc3761b2f7d978851eef62c4a291a0f18f (diff)
downloadopenocd_libswd-c76b0618d7457a68b464a64e91ed98dc2482b262.tar.gz
openocd_libswd-c76b0618d7457a68b464a64e91ed98dc2482b262.tar.bz2
openocd_libswd-c76b0618d7457a68b464a64e91ed98dc2482b262.tar.xz
openocd_libswd-c76b0618d7457a68b464a64e91ed98dc2482b262.zip
David Kuehling <dvdkhlng@gmx.de> - added jim-eventloop.c
git-svn-id: svn://svn.berlios.de/openocd/trunk@898 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/helper/command.c')
-rw-r--r--src/helper/command.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/helper/command.c b/src/helper/command.c
index 11986228..811328dc 100644
--- a/src/helper/command.c
+++ b/src/helper/command.c
@@ -34,6 +34,7 @@
#include "log.h"
#include "time_support.h"
+#include "jim-eventloop.h"
#include <stdlib.h>
#include <string.h>
@@ -654,6 +655,8 @@ command_context_t* command_init()
add_default_dirs();
+ Jim_EventLoopOnLoad(interp);
+
if (Jim_Eval(interp, startup_tcl)==JIM_ERR)
{
LOG_ERROR("Failed to run startup.tcl (embedded into OpenOCD compile time)");
@@ -705,6 +708,18 @@ int handle_fast_command(struct command_context_s *cmd_ctx, char *cmd, char **arg
return ERROR_OK;
}
+void process_jim_events()
+{
+ static int recursion = 0;
+
+ if (!recursion)
+ {
+ recursion++;
+ Jim_ProcessEvents (interp, JIM_ALL_EVENTS|JIM_DONT_WAIT);
+ recursion--;
+ }
+}
+
void register_jim(struct command_context_s *cmd_ctx, const char *name, int (*cmd)(Jim_Interp *interp, int argc, Jim_Obj *const *argv), const char *help)
{
Jim_CreateCommand(interp, name, cmd, NULL, NULL);