.cfg files are now executed as Jim Tcl. Commands that terminate script w/error message.

git-svn-id: svn://svn.berlios.de/openocd/trunk@790 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
oharboe
2008-07-11 09:06:36 +00:00
parent 0f2dfabd3b
commit 381f9a2e8a
5 changed files with 25 additions and 78 deletions

View File

@@ -474,59 +474,6 @@ int command_run_line(command_context_t *context, char *line)
return jim_command(context, line);
}
int command_run_file(command_context_t *context, FILE *file, enum command_mode mode)
{
int retval = ERROR_OK;
int old_command_mode;
char *buffer=malloc(4096);
if (buffer==NULL)
{
return ERROR_INVALID_ARGUMENTS;
}
old_command_mode = context->mode;
context->mode = mode;
while (fgets(buffer, 4096, file))
{
char *p;
char *cmd, *end;
/* stop processing line after a comment (#, !) or a LF, CR were encountered */
if ((p = strpbrk(buffer, "#!\r\n")))
*p = 0;
/* skip over leading whitespace */
cmd = buffer;
while (isspace(*cmd))
cmd++;
/* empty (all whitespace) line? */
if (!*cmd)
continue;
/* search the end of the current line, ignore trailing whitespace */
for (p = end = cmd; *p; p++)
if (!isspace(*p))
end = p;
/* terminate end */
*++end = 0;
if (strcasecmp(cmd, "quit") == 0)
break;
/* run line */
if ((retval = command_run_line(context, cmd)) == ERROR_COMMAND_CLOSE_CONNECTION)
break;
}
context->mode = old_command_mode;
free(buffer);
return retval;
}
int command_run_linef(command_context_t *context, char *format, ...)
{