diff options
Diffstat (limited to 'winsup/cygwin/fhandler_console.cc')
-rw-r--r-- | winsup/cygwin/fhandler_console.cc | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/winsup/cygwin/fhandler_console.cc b/winsup/cygwin/fhandler_console.cc index 82ede58cd..6f1e73961 100644 --- a/winsup/cygwin/fhandler_console.cc +++ b/winsup/cygwin/fhandler_console.cc @@ -948,6 +948,8 @@ dev_console::set_color (HANDLE h) (save_fg & FOREGROUND_BLUE ? BACKGROUND_BLUE : 0) | (save_fg & FOREGROUND_INTENSITY ? BACKGROUND_INTENSITY : 0); } + + /* apply attributes */ if (underline) win_fg = underline_color; /* emulate blink with bright background */ @@ -956,7 +958,12 @@ dev_console::set_color (HANDLE h) if (intensity == INTENSITY_INVISIBLE) win_fg = win_bg; else if (intensity == INTENSITY_BOLD) - win_fg |= FOREGROUND_INTENSITY; + /* apply foreground intensity only in non-reverse mode! */ + if (reverse) + win_bg |= BACKGROUND_INTENSITY; + else + win_fg |= FOREGROUND_INTENSITY; + current_win32_attr = win_fg | win_bg; if (h) SetConsoleTextAttribute (h, current_win32_attr); |