M app/Integration.hs => app/Integration.hs +1 -1
@@ 146,7 146,7 @@ main = do
present renderer
unless (QuitEvent `elem` events) loop
SDL.quit
- FC.fini
+ -- FC.fini -- FIXME: Need to free all Haskell data before freeing FontConfig's
data Nil = Nil deriving Eq
instance PropertyParser Nil where
M app/Integration2.hs => app/Integration2.hs +4 -1
@@ 23,6 23,7 @@ import qualified Graphics.Text.Font.Choose as FC
import Control.Concurrent.MVar (putMVar, newEmptyMVar, readMVar)
import Control.Concurrent (forkIO)
import Control.DeepSeq (NFData(..), ($!!))
+--import System.Mem (performGC)
resolve' = CSSCond.resolve lowerVars lowerToks
lowerVars _ = CSSCond.B False
@@ 51,7 52,9 @@ main = do
layout `seq` print "Laying out page!"
res <- forkCompute $ boxLayout zeroBox { size = Size 1280 480 } layout False
readMVar res
- FC.fini
+ --performGC
+ --FC.fini -- FIXME: GC still left FontConfig references...
+ return ()
data Nil = Nil deriving Eq
instance Style.PropertyParser Nil where