diff --git a/r5dev/windows/console.cpp b/r5dev/windows/console.cpp index 05771b60..0e33f60e 100644 --- a/r5dev/windows/console.cpp +++ b/r5dev/windows/console.cpp @@ -25,12 +25,16 @@ static std::string s_ConsoleInput; //----------------------------------------------------------------------------- void SetConsoleBackgroundColor(COLORREF color) { - CONSOLE_SCREEN_BUFFER_INFOEX sbInfoEx{}; + CONSOLE_SCREEN_BUFFER_INFOEX sbInfoEx{0}; sbInfoEx.cbSize = sizeof(CONSOLE_SCREEN_BUFFER_INFOEX); HANDLE consoleOut = GetStdHandle(STD_OUTPUT_HANDLE); GetConsoleScreenBufferInfoEx(consoleOut, &sbInfoEx); + // The '+= 1' is required, else the window will shrink + // by '1' each time this function is getting called on + // the same console window. + sbInfoEx.srWindow.Bottom += 1; sbInfoEx.ColorTable[0] = color; SetConsoleScreenBufferInfoEx(consoleOut, &sbInfoEx); } @@ -43,7 +47,7 @@ void SetConsoleBackgroundColor(COLORREF color) //----------------------------------------------------------------------------- void FlashConsoleBackground(int nFlashCount, int nFlashInterval, COLORREF color) { - CONSOLE_SCREEN_BUFFER_INFOEX sbInfoEx{}; + CONSOLE_SCREEN_BUFFER_INFOEX sbInfoEx{0}; sbInfoEx.cbSize = sizeof(CONSOLE_SCREEN_BUFFER_INFOEX); HANDLE consoleOut = GetStdHandle(STD_OUTPUT_HANDLE);