diff --git a/dlls/kernel32/editline.c b/dlls/kernel32/editline.c index 78ea7894208..b436a5088b2 100644 --- a/dlls/kernel32/editline.c +++ b/dlls/kernel32/editline.c @@ -916,6 +916,7 @@ WCHAR* CONSOLE_Readline(HANDLE hConsoleIn, BOOL can_pos_cursor) void (*func)(struct WCEL_Context* ctx); DWORD mode, input_mode, ks; int use_emacs; + CONSOLE_SCREEN_BUFFER_INFO csbi; memset(&ctx, 0, sizeof(ctx)); ctx.hConIn = hConsoleIn; @@ -994,6 +995,10 @@ WCHAR* CONSOLE_Readline(HANDLE hConsoleIn, BOOL can_pos_cursor) if (ctx.insertkey) ctx.insert = !ctx.insert; + GetConsoleScreenBufferInfo(ctx.hConOut, &csbi); + if (ctx.csbi.wAttributes != csbi.wAttributes) + ctx.csbi.wAttributes = csbi.wAttributes; + if (func) (func)(&ctx); else if (!(ir.Event.KeyEvent.dwControlKeyState & LEFT_ALT_PRESSED))