Fri Mar 27 12:06:03 CET 2009  Axel Simon <axel.si...@ens.fr>
  * Make explicit use of concurrent finalizers.
  This patch acounts for the change of semantics that finalizers undergo with
  the release of GHC 6.10.1. Specifcially, finalizers are now by default
  run during garbage collection, making it impossible to have them call back
  to Haskell land. This patch uses functions that specifically schedule any
  finilizers to be run as new threads once the mutator springs back to life.
New patches:

[Make explicit use of concurrent finalizers.
Axel Simon <axel.si...@ens.fr>**20090327110603
 This patch acounts for the change of semantics that finalizers undergo with
 the release of GHC 6.10.1. Specifcially, finalizers are now by default
 run during garbage collection, making it impossible to have them call back
 to Haskell land. This patch uses functions that specifically schedule any
 finilizers to be run as new threads once the mutator springs back to life.
] {
hunk ./glib/System/Glib/FFI.hs.pp 46
+#if (__GLASGOW_HASKELL__>=610)
+import qualified Foreign.Concurrent
+#endif
hunk ./glib/System/Glib/FFI.hs.pp 53
+#if (__GLASGOW_HASKELL__>=610)
+newForeignPtr :: Ptr a -> FinalizerPtr a -> IO (ForeignPtr a)
+newForeignPtr p finalizer
+   = Foreign.Concurrent.newForeignPtr p (mkFinalizer finalizer p)
+
+foreign import ccall "dynamic"
+   mkFinalizer :: FinalizerPtr a -> Ptr a -> IO ()
+#else
+newForeignPtr :: Ptr a -> FinalizerPtr a -> IO (ForeignPtr a)
hunk ./glib/System/Glib/FFI.hs.pp 63
+#endif
}

Context:

[Fix documentation.
axel.si...@ens.fr**20090217180909] 
[TAG 0.10.0
Peter Gavin <pga...@gmail.com>**20090207054815] 
Patch bundle hash:
3b5048f621e79db12e9ea9a38ebf49e345465933
------------------------------------------------------------------------------
_______________________________________________
Gtk2hs-devel mailing list
Gtk2hs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gtk2hs-devel

Reply via email to