diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,8 @@
+## 1.1.12.1
+
+* Fix build for GHC `<= 7.8` [#260](https://github.com/snoyberg/conduit/issues/260)
+* Fix accidentally breaking change in `sourceProcessWithConsumer` type signature
+
 ## 1.1.12
 
 * Add sourceProcessWithStreams [#258](https://github.com/snoyberg/conduit/pull/258)
diff --git a/Data/Conduit/Process.hs b/Data/Conduit/Process.hs
--- a/Data/Conduit/Process.hs
+++ b/Data/Conduit/Process.hs
@@ -31,6 +31,7 @@
 import Data.ByteString (ByteString)
 import Control.Concurrent.Async (runConcurrently, Concurrently(..))
 import Control.Monad.Catch (MonadMask, onException, throwM, finally)
+import Control.Applicative ((<$>), (<*>))
 
 instance (r ~ (), MonadIO m, i ~ ByteString) => InputSource (ConduitM i o m r) where
     isStdStream = (\(Just h) -> return $ sinkHandle h, Just CreatePipe)
@@ -51,23 +52,22 @@
 -- the process is terminated.
 --
 -- Since 1.1.2
-sourceProcessWithConsumer :: (MonadMask m, MonadIO m)
+sourceProcessWithConsumer :: MonadIO m
                           => CreateProcess
-                          -> Consumer ByteString m a -- ^stdout
+                          -> Consumer ByteString m a -- ^ stdout
                           -> m (ExitCode, a)
 sourceProcessWithConsumer cp consumer = do
-    (ClosedStream, (source, close), ClosedStream, sph) <- streamingProcess cp
-    res <- (source $$ consumer)
-           `finally` close
-           `onException` liftIO (terminateStreamingProcess sph)
-    ec <- waitForStreamingProcess sph
+    (ClosedStream, (source, close), ClosedStream, cph) <- streamingProcess cp
+    res <- source $$ consumer
+    close
+    ec <- waitForStreamingProcess cph
     return (ec, res)
 
 -- | Like @sourceProcessWithConsumer@ but providing the command to be run as
 -- a @String@.
 --
 -- Since 1.1.2
-sourceCmdWithConsumer :: (MonadMask m, MonadIO m)
+sourceCmdWithConsumer :: MonadIO m
                       => String                  -- ^command
                       -> Consumer ByteString m a -- ^stdout
                       -> m (ExitCode, a)
diff --git a/conduit-extra.cabal b/conduit-extra.cabal
--- a/conduit-extra.cabal
+++ b/conduit-extra.cabal
@@ -1,5 +1,5 @@
 Name:                conduit-extra
-Version:             1.1.12
+Version:             1.1.12.1
 Synopsis:            Batteries included conduit: adapters for common libraries.
 Description:
     The conduit package itself maintains relative small dependencies. The purpose of this package is to collect commonly used utility functions wrapping other library dependencies, without depending on heavier-weight dependencies. The basic idea is that this package should only depend on haskell-platform packages and conduit.
