From ce266ad574c4145e837c716c46ef0ef6b02620ce Mon Sep 17 00:00:00 2001 From: Fan Zhang Date: Thu, 12 Mar 2020 09:26:38 +0000 Subject: [PATCH] vlib: fix unix cli SIGSEGV for empty line input When logging is enabled, an empty line input (press Enter only) will cause SIGSEGV. This patch fixes the problem by checking the command length first. Type: fix Signed-off-by: Fan Zhang Change-Id: Ib4cbd1c7bfd6a694e289d28958875c7d2356a93e --- src/vlib/unix/cli.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/vlib/unix/cli.c b/src/vlib/unix/cli.c index 6e566d11ffd..2a13c84b92d 100644 --- a/src/vlib/unix/cli.c +++ b/src/vlib/unix/cli.c @@ -2557,7 +2557,8 @@ more: format_timeval, 0 /* current bat-time */ , 0 /* current bat-format */ , cli_file_index, cf->current_command); - if (cf->current_command[vec_len (cf->current_command) - 1] != '\n') + if ((vec_len (cf->current_command) > 0) && + (cf->current_command[vec_len (cf->current_command) - 1] != '\n')) lv = format (lv, "\n"); int rv __attribute__ ((unused)) = write (um->log_fd, lv, vec_len (lv)); } -- 2.16.6