X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ffreeglut_display.c;h=2ba0ec549c9f277bda903501f92ead5580b15cf7;hb=9e756b17d58b2991a8f4735c14d40a5843fc7db7;hp=8faa4a5a3a164c7a51f050cbfe0f94f8dc5669ec;hpb=78d46c63a115e0a868d83f365399864b62a4ea7f;p=freeglut diff --git a/src/freeglut_display.c b/src/freeglut_display.c index 8faa4a5..2ba0ec5 100644 --- a/src/freeglut_display.c +++ b/src/freeglut_display.c @@ -36,7 +36,12 @@ void FGAPIENTRY glutPostRedisplay( void ) { FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutPostRedisplay" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutPostRedisplay" ); + if ( ! fgStructure.CurrentWindow ) + { + fgError ( " ERROR: Function <%s> called" + " with no current window defined.", "glutPostRedisplay" ) ; + } + fgStructure.CurrentWindow->State.Redisplay = GL_TRUE; } @@ -48,13 +53,17 @@ void FGAPIENTRY glutSwapBuffers( void ) FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSwapBuffers" ); FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSwapBuffers" ); + /* + * "glXSwapBuffers" already performs an implicit call to "glFlush". What + * about "SwapBuffers"? + */ glFlush( ); if( ! fgStructure.CurrentWindow->Window.DoubleBuffered ) return; -#if TARGET_HOST_UNIX_X11 +#if TARGET_HOST_POSIX_X11 glXSwapBuffers( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle ); -#elif TARGET_HOST_WIN32 || TARGET_HOST_WINCE +#elif TARGET_HOST_MS_WINDOWS SwapBuffers( fgStructure.CurrentWindow->Window.Device ); #endif