on master help sign in
Fix unixFilter on Windows
da7ae99Collin J. Doering
src/Hakyll/Core/UnixFilter.hs+6−2
@@ -19,7 +19,7 @@ import System.Exit (ExitCode (..))
19import System.IO (Handle, hClose, hFlush, hGetContents,
19import System.IO (Handle, hClose, hFlush, hGetContents,
20 hPutStr, hSetEncoding, localeEncoding)
20 hPutStr, hSetEncoding, localeEncoding)
21import System.Process
21import System.Process
22−
22+import System.Info
23
23
24--------------------------------------------------------------------------------
24--------------------------------------------------------------------------------
25import Hakyll.Core.Compiler
25import Hakyll.Core.Compiler
@@ -105,8 +105,12 @@ unixFilterIO :: Monoid o
105 -> i
105 -> i
106 -> IO (o, String, ExitCode)
106 -> IO (o, String, ExitCode)
107unixFilterIO writer reader programName args input = do
107unixFilterIO writer reader programName args input = do
108+ let pr = if os == "mingw32"
109+ then shell $ unwords (programName : args)
110+ else proc programName args
111+
108 (Just inh, Just outh, Just errh, pid) <-
112 (Just inh, Just outh, Just errh, pid) <-
109− createProcess (proc programName args)
113+ createProcess pr
110 { std_in = CreatePipe
114 { std_in = CreatePipe
111 , std_out = CreatePipe
115 , std_out = CreatePipe
112 , std_err = CreatePipe
116 , std_err = CreatePipe