diff options
-rw-r--r-- | docs/modelers.html | 2 | ||||
-rw-r--r-- | src/glut/glx/glut_event.c | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/docs/modelers.html b/docs/modelers.html index b93f4d8b76..aae9686959 100644 --- a/docs/modelers.html +++ b/docs/modelers.html @@ -28,7 +28,7 @@ </li><li><a href="http://innovation3d.sourceforge.net/" target="_parent">Innovation3D</a> - 3D modeling program </li><li><a href="http://mesa3d.sourceforge.net/notfound.html" target="_parent">KWRL</a> - VRML browser - </li><li><a href="http://www.vermontel.com/%7Ecmorley/vrml.html" target="_parent">LibVRML97/Lookat</a> + </li><li><a href="http://www.openvrml.org/" target="_parent">LibVRML97/Lookat</a> - VRML viewer </li><li><a href="http://aig.cs.man.ac.uk/systems/Maverik/" target="_parent">Maverik</a> - VR graphics and interaction system diff --git a/src/glut/glx/glut_event.c b/src/glut/glx/glut_event.c index 0a96e8cf71..b5df7b2311 100644 --- a/src/glut/glx/glut_event.c +++ b/src/glut/glx/glut_event.c @@ -172,10 +172,14 @@ handleTimeouts(void) GETTIMEOFDAY(&now); while (IS_AT_OR_AFTER(__glutTimerList->timeout, now)) { timer = __glutTimerList; - __glutTimerList = timer->next; + /* call the timer function */ timer->func(timer->value); + /* remove from the linked list */ + __glutTimerList = timer->next; + /* put this timer on the "free" list */ timer->next = freeTimerList; freeTimerList = timer; + if (!__glutTimerList) break; } |