Prevented case where no window was set when waiting for events.
[freeglut] / src / mswin / fg_init_mswin.c
index f80fe78..9822f8c 100644 (file)
@@ -33,6 +33,7 @@
 
 extern LRESULT CALLBACK fgPlatformWindowProc( HWND hWnd, UINT uMsg,
                                WPARAM wParam, LPARAM lParam );
+extern void fgPlatformInitSystemTime();
 
 
 /*
@@ -56,9 +57,6 @@ void fgPlatformInitialize( const char* displayName )
          * Each of the windows should have its own device context, and we
          * want redraw events during Vertical and Horizontal Resizes by
          * the user.
-         *
-         * XXX Old code had "| CS_DBCLCKS" commented out.  Plans for the
-         * XXX future?  Dead-end idea?
          */
         wc.lpfnWndProc    = fgPlatformWindowProc;
         wc.cbClsExtra     = 0;
@@ -117,6 +115,10 @@ void fgPlatformInitialize( const char* displayName )
     }
     /* Set the timer granularity to 1 ms */
     timeBeginPeriod ( 1 );
+    /* Init setup to deal with timer wrap, can't query system time before this is done */
+    fgPlatformInitSystemTime();
+    /* Get start time */
+    fgState.Time = fgSystemTime();
 
 
     fgState.Initialised = GL_TRUE;