diff --git a/System/Glib/GObject.chs b/System/Glib/GObject.chs
--- a/System/Glib/GObject.chs
+++ b/System/Glib/GObject.chs
@@ -127,8 +127,6 @@
 
 {#pointer GDestroyNotify as DestroyNotify#}
 
-foreign import ccall "wrapper" mkDestroyNotifyPtr :: IO () -> IO DestroyNotify
-
 -- | This function wraps any newly created objects that derives from
 -- GInitiallyUnowned also known as objects with
 -- \"floating-references\". The object will be refSink (for glib
diff --git a/System/Glib/MainLoop.chs b/System/Glib/MainLoop.chs
--- a/System/Glib/MainLoop.chs
+++ b/System/Glib/MainLoop.chs
@@ -71,7 +71,7 @@
 
 {#pointer SourceFunc#}
 
-foreign import ccall "wrapper" mkSourceFunc :: IO {#type gint#} -> IO SourceFunc
+foreign import ccall "wrapper" mkSourceFunc :: (Ptr () -> IO {#type gint#}) -> IO SourceFunc
 
 type HandlerId = {#type guint#}
 
@@ -79,7 +79,7 @@
 --
 makeCallback :: IO {#type gint#} -> IO (SourceFunc, DestroyNotify)
 makeCallback fun = do
-  funPtr <- mkSourceFunc fun
+  funPtr <- mkSourceFunc (const fun)
   return (funPtr, destroyFunPtr)
 
 -- | Sets a function to be called at regular intervals, with the default
diff --git a/System/Glib/Signals.chs b/System/Glib/Signals.chs
--- a/System/Glib/Signals.chs
+++ b/System/Glib/Signals.chs
@@ -198,16 +198,16 @@
 
 {#pointer GClosureNotify#}
 
-foreign import ccall "wrapper" mkDestructor :: IO () -> IO GClosureNotify 	 
-  	 
+foreign import ccall "wrapper" mkDestructor :: IO () -> IO GClosureNotify
+
 mkFunPtrClosureNotify :: FunPtr a -> IO GClosureNotify
-mkFunPtrClosureNotify hPtr = do 	 
-  dRef <- newIORef nullFunPtr 	 
-  dPtr <- mkDestructor $ do 	 
-    freeHaskellFunPtr hPtr 	 
-    dPtr <- readIORef dRef 	 
-    freeHaskellFunPtr dPtr 	 
-  writeIORef dRef dPtr 	 
+mkFunPtrClosureNotify hPtr = do
+  dRef <- newIORef nullFunPtr
+  dPtr <- mkDestructor $ do
+    freeHaskellFunPtr hPtr
+    dPtr <- readIORef dRef
+    freeHaskellFunPtr dPtr
+  writeIORef dRef dPtr
   return dPtr
 
 #endif
diff --git a/glib.cabal b/glib.cabal
--- a/glib.cabal
+++ b/glib.cabal
@@ -1,5 +1,5 @@
 Name:           glib
-Version:        0.12.3.1
+Version:        0.12.4
 License:        LGPL-2.1
 License-file:   COPYING
 Copyright:      (c) 2001-2010 The Gtk2Hs Team
