diff --git a/console.cpp b/console.cpp index 3dbaf77..e739496 100644 --- a/console.cpp +++ b/console.cpp @@ -88,6 +88,8 @@ int console::wait_char(const int timeout_ms) void console::flush_input() { + std::unique_lock lck(input_lock); + input_buffer.clear(); } @@ -229,6 +231,8 @@ void console::operator()() else if (running_flag == false && c == 12) // ^l refresh_virtual_terminal(); else { + std::unique_lock lck(input_lock); + input_buffer.push_back(c); have_data.notify_all();