diff --git a/hgext/color.py b/hgext/color.py
index aab323df2c441d7b79c6c37cd1dd3cdb2069529b_aGdleHQvY29sb3IucHk=..55db12e5445029408082f38327acda048dea6be4_aGdleHQvY29sb3IucHk= 100644
--- a/hgext/color.py
+++ b/hgext/color.py
@@ -174,9 +174,10 @@
             realmode = 'terminfo'
 
     if realmode == 'win32':
-        if not w32effects and mode == 'win32':
-            # only warn if color.mode is explicitly set to win32
-            ui.warn(_('warning: failed to set color mode to %s\n') % mode)
+        if not w32effects:
+            if mode == 'win32':
+                # only warn if color.mode is explicitly set to win32
+                ui.warn(_('warning: failed to set color mode to %s\n') % mode)
             return None
         _effects.update(w32effects)
     elif realmode == 'ansi':