From c0b97b674939f1694249a6f15918fc585badadb9 Mon Sep 17 00:00:00 2001 From: Ivan Grokhotkov Date: Fri, 11 Mar 2022 20:52:15 +0100 Subject: [PATCH] console: linenoise: fix usage of an uninitialized buffer Reported in https://github.com/espressif/esp-idf/issues/6440 The issue could occur if esp_console_config_t::hint_color was set to -1. --- components/console/linenoise/linenoise.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/components/console/linenoise/linenoise.c b/components/console/linenoise/linenoise.c index ecdbf3a366..f074d67c99 100644 --- a/components/console/linenoise/linenoise.c +++ b/components/console/linenoise/linenoise.c @@ -501,9 +501,10 @@ void refreshShowHints(struct abuf *ab, struct linenoiseState *l, int plen) { int hintmaxlen = l->cols-(plen+l->len); if (hintlen > hintmaxlen) hintlen = hintmaxlen; if (bold == 1 && color == -1) color = 37; - if (color != -1 || bold != 0) + if (color != -1 || bold != 0) { snprintf(seq,64,"\033[%d;%d;49m",bold,color); - abAppend(ab,seq,strlen(seq)); + abAppend(ab,seq,strlen(seq)); + } abAppend(ab,hint,hintlen); if (color != -1 || bold != 0) abAppend(ab,"\033[0m",4);