diff --git a/objects/dc.c b/objects/dc.c
index ae9d254b7309f675459eaec7122711c6ae413cde..84a935fc0f5cb883480842b07b443d4c438b01c9 100644
--- a/objects/dc.c
+++ b/objects/dc.c
@@ -940,7 +940,7 @@ INT WINAPI SetGraphicsMode( HDC hdc, INT mode )
      * make a lot of sense to me, but that's the way it is.
      */
     if (!dc) return 0;
-    if ((mode > 0) || (mode <= GM_LAST))
+    if ((mode > 0) && (mode <= GM_LAST))
     {
         ret = dc->GraphicsMode;
         dc->GraphicsMode = mode;