diff options
-rw-r--r-- | src/helper/command.c | 15 | ||||
-rw-r--r-- | src/helper/command.h | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/helper/command.c b/src/helper/command.c index 54315dd9..8a736686 100644 --- a/src/helper/command.c +++ b/src/helper/command.c @@ -537,6 +537,21 @@ int command_run_file(command_context_t *context, FILE *file, enum command_mode m return retval; } +int command_run_linef(command_context_t *context, char *format, ...) +{ + int retval=ERROR_FAIL; + char *string; + va_list ap; + va_start(ap, format); + string = alloc_vprintf(format, ap); + if (string!=NULL) + { + retval=command_run_line(context, string); + } + va_end(ap); + return retval; +} + void command_print_help_line(command_context_t* context, struct command_s *command, int indent) { command_t *c; diff --git a/src/helper/command.h b/src/helper/command.h index c468247c..8d50d6e6 100644 --- a/src/helper/command.h +++ b/src/helper/command.h @@ -74,6 +74,7 @@ extern int command_done(command_context_t *context); extern void command_print(command_context_t *context, char *format, ...); extern void command_print_sameline(command_context_t *context, char *format, ...); extern int command_run_line(command_context_t *context, char *line); +extern int command_run_linef(command_context_t *context, char *format, ...); extern int command_run_line_internal(command_context_t *context, char *line); extern int command_run_file(command_context_t *context, FILE *file, enum command_mode mode); |