From: Travis Cross Date: Thu, 22 Sep 2011 21:07:54 +0000 (+0000) Subject: fs_cli: clear the CLI before inserting function key commands X-Git-Tag: v1.2-rc1~51^2~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6724d7af973ea4c216c009edcb34f8ee91d0ff37;p=thirdparty%2Ffreeswitch.git fs_cli: clear the CLI before inserting function key commands --- diff --git a/libs/esl/fs_cli.c b/libs/esl/fs_cli.c index 3085a44ea5..3873f455f1 100644 --- a/libs/esl/fs_cli.c +++ b/libs/esl/fs_cli.c @@ -102,6 +102,13 @@ static void sleep_s(int secs) { _sleep_ns(secs, 0); } static int process_command(esl_handle_t *handle, const char *cmd); +static void clear_cli(void) { + const LineInfo *lf = el_line(el); + int len=(lf->lastchar - lf->buffer); + for (; len>0; len--) + write(STDOUT_FILENO, "\b", 1); +} + /* If a fnkey is configured then process the command */ static unsigned char console_fnkey_pressed(int i) { @@ -112,6 +119,7 @@ static unsigned char console_fnkey_pressed(int i) esl_log(ESL_LOG_ERROR, "FUNCTION KEY F%d IS NOT BOUND, please edit your config.\n", i); return CC_REDISPLAY; } + clear_cli(); printf("%s\n", c); if (process_command(global_handle, c)) { running = thread_running = 0;