diff --git a/components/console/linenoise/linenoise.c b/components/console/linenoise/linenoise.c index c0f551d671..f88a24620a 100644 --- a/components/console/linenoise/linenoise.c +++ b/components/console/linenoise/linenoise.c @@ -106,6 +106,7 @@ #include #include #include +#include #include #include #include @@ -879,6 +880,9 @@ static int linenoiseEdit(char *buf, size_t buflen, const char *prompt) linenoiseEditDeletePrevWord(&l); break; } + if (__fbufsize(stdout) > 0) { + fflush(stdout); + } } return l.len; } diff --git a/examples/system/console/main/console_example_main.c b/examples/system/console/main/console_example_main.c index a115c6f999..2e06afa844 100644 --- a/examples/system/console/main/console_example_main.c +++ b/examples/system/console/main/console_example_main.c @@ -59,9 +59,8 @@ static void initialize_nvs() static void initialize_console() { - /* Disable buffering on stdin and stdout */ + /* Disable buffering on stdin */ setvbuf(stdin, NULL, _IONBF, 0); - setvbuf(stdout, NULL, _IONBF, 0); /* Minicom, screen, idf_monitor send CR when ENTER key is pressed */ esp_vfs_dev_uart_set_rx_line_endings(ESP_LINE_ENDINGS_CR); diff --git a/examples/wifi/iperf/main/main.c b/examples/wifi/iperf/main/main.c index ffeeb680b5..bc9ddbcbbb 100644 --- a/examples/wifi/iperf/main/main.c +++ b/examples/wifi/iperf/main/main.c @@ -28,9 +28,8 @@ static void initialize_console() { - /* Disable buffering on stdin and stdout */ + /* Disable buffering on stdin */ setvbuf(stdin, NULL, _IONBF, 0); - setvbuf(stdout, NULL, _IONBF, 0); /* Minicom, screen, idf_monitor send CR when ENTER key is pressed */ esp_vfs_dev_uart_set_rx_line_endings(ESP_LINE_ENDINGS_CR);