1 patch for repository http://code.ouroborus.net/gloss/gloss-stable:

Sun Jan 22 12:55:36 PST 2012  Thomas.DuBuisson@gmail.com
  * Exit cleanly when uncaught exceptions hit the main loop.

New patches:

[Exit cleanly when uncaught exceptions hit the main loop.
Thomas.DuBuisson@gmail.com**20120122205536
 Ignore-this: 6b8451e03a360e0890cc9647a4f44285
] hunk ./gloss/Graphics/Gloss/Internals/Interface/Backend/GLFW.hs 15
 import Graphics.UI.GLFW                    (WindowValue(..))
 import qualified Graphics.UI.GLFW          as GLFW
 import qualified Graphics.Rendering.OpenGL as GL
-
+import qualified Control.Excpetion         as X
 
 -- [Note: FreeGlut]
 -- ~~~~~~~~~~~~~~~~
hunk ./gloss/Graphics/Gloss/Internals/Interface/Backend/GLFW.hs 437
         -> IO ()
 
 runMainLoopGLFW stateRef 
- = do   windowIsOpen <- GLFW.windowIsOpen
-        when windowIsOpen 
-         $ do   dirty <- fmap dirtyScreen $ readIORef stateRef
+ = X.catch go recover
+ where
+ recover :: SomeException -> IO ()x
+ recover = do
+#ifdef linux_HOST_OS
+-- See [Note: FreeGlut] for why we need this.
+        GLUT.exit
+#endif
+        return True 
+ go :: IO ()
+ go = do windowIsOpen <- GLFW.windowIsOpen
+         when windowIsOpen 
+          $ do  dirty <- fmap dirtyScreen $ readIORef stateRef
 
                 when dirty
                  $ do   s <- readIORef stateRef

Context:

[TAG Release 1.6.0.1
Ben Lippmeier <benl@ouroborus.net>**20111228020857
 Ignore-this: 8b11cdc5e55cbaf6ecd6dddc346eed61
] 
Patch bundle hash:
510c91f7f1b8f8c610dc2a75c497ecd5cc19bc47
