summary refs log tree commit diff stats
path: root/lib/pure
diff options
context:
space:
mode:
authorWhiteDuke <Wh1teDuke@users.noreply.github.com>2018-04-18 23:29:10 +0200
committerAndreas Rumpf <rumpf_a@web.de>2018-04-18 23:29:10 +0200
commite237428d424ad18e03d4ffa6d036afb175d28bff (patch)
treefbc838c6e54c574ee736c6e08ade0d5d6780b35e /lib/pure
parent4a9f6f00adb3234e604faa40cca52bc15ede9769 (diff)
downloadNim-e237428d424ad18e03d4ffa6d036afb175d28bff.tar.gz
Fix bright option (#7622)
Setting the option to true, then to false would not turn off bright attribute.
Diffstat (limited to 'lib/pure')
-rw-r--r--lib/pure/terminal.nim8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/pure/terminal.nim b/lib/pure/terminal.nim
index 4f2f73ba7..002181a6f 100644
--- a/lib/pure/terminal.nim
+++ b/lib/pure/terminal.nim
@@ -557,8 +557,8 @@ proc setForegroundColor*(f: File, fg: ForegroundColor, bright=false) =
   when defined(windows):
     let h = conHandle(f)
     var old = getAttributes(h) and not FOREGROUND_RGB
-    if bright:
-      old = old or FOREGROUND_INTENSITY
+    old = if bright: old or FOREGROUND_INTENSITY
+          else:      old and not(FOREGROUND_INTENSITY)
     const lookup: array[ForegroundColor, int] = [
       0,
       (FOREGROUND_RED),
@@ -579,8 +579,8 @@ proc setBackgroundColor*(f: File, bg: BackgroundColor, bright=false) =
   when defined(windows):
     let h = conHandle(f)
     var old = getAttributes(h) and not BACKGROUND_RGB
-    if bright:
-      old = old or BACKGROUND_INTENSITY
+    old = if bright: old or BACKGROUND_INTENSITY
+          else:      old and not(BACKGROUND_INTENSITY)
     const lookup: array[BackgroundColor, int] = [
       0,
       (BACKGROUND_RED),