From: Diederick Niehorster Date: Fri, 15 Jun 2012 05:47:32 +0000 (+0000) Subject: as per Ioannis Petikas' suggestion on the mailing list, set NeedToResize X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=commitdiff_plain;ds=sidebyside;h=22ee3352655b646fcba5dba4ae9fcfcf7e9f212b;p=freeglut as per Ioannis Petikas' suggestion on the mailing list, set NeedToResize to false before calling fghReshapeWindow git-svn-id: svn+ssh://svn.code.sf.net/p/freeglut/code/trunk/freeglut/freeglut@1344 7f0cb862-5218-0410-a997-914c9d46530a --- diff --git a/src/fg_main.c b/src/fg_main.c index 99040af..c3bccdc 100644 --- a/src/fg_main.c +++ b/src/fg_main.c @@ -88,6 +88,7 @@ static void fghReshapeWindow ( SFG_Window *window, int width, int height ) * the already-drawn part does not get drawn again and things look funny. * But without this we get this bad behaviour whenever we resize the * window. + * DN: Hmm.. the above sounds like a concern only in single buffered mode... */ window->State.Redisplay = GL_TRUE; @@ -120,13 +121,17 @@ void fghRedrawWindow ( SFG_Window *window ) if( window->State.NeedToResize ) { + /* Set need to resize to false before calling fghReshapeWindow, otherwise + in the case the user's reshape callback calls glutReshapeWindow, + his request would get canceled after fghReshapeWindow gets called. + */ + window->State.NeedToResize = GL_FALSE; + fghReshapeWindow( window, window->State.Width, window->State.Height ); - - window->State.NeedToResize = GL_FALSE; } INVOKE_WCB( *window, Display, ( ) );