Fixing a cursor bug in \"GLUT_CURSOR_INHERIT\"
authorJohn F. Fay <johnffay@nettally.com>
Wed, 13 Jul 2005 20:25:07 +0000 (20:25 +0000)
committerJohn F. Fay <johnffay@nettally.com>
Wed, 13 Jul 2005 20:25:07 +0000 (20:25 +0000)
git-svn-id: svn+ssh://svn.code.sf.net/p/freeglut/code/trunk/freeglut/freeglut@677 7f0cb862-5218-0410-a997-914c9d46530a

src/freeglut_cursor.c

index d32ba5c..5542a2d 100644 (file)
@@ -147,11 +147,13 @@ void fgSetCursor ( SFG_Window *window, int cursorID )
             }
         }
 
             }
         }
 
-        if ( ( cursorIDToUse != GLUT_CURSOR_NONE ) && ( cursor == None ) ) {
+        if ( cursorIDToUse == GLUT_CURSOR_INHERIT )
+            XUndefineCursor( fgDisplay.Display, window->Window.Handle );
+        if ( ( cursorIDToUse != GLUT_CURSOR_NONE ) && ( cursor == None ) )
             fgError( "Failed to create cursor" );
             fgError( "Failed to create cursor" );
-        }
-        XDefineCursor( fgDisplay.Display,
-                       window->Window.Handle, cursor );
+        else
+            XDefineCursor( fgDisplay.Display,
+                           window->Window.Handle, cursor );
     }
 
 #elif TARGET_HOST_WIN32 || TARGET_HOST_WINCE
     }
 
 #elif TARGET_HOST_WIN32 || TARGET_HOST_WINCE