diff --git a/yesod-core/Yesod/Core/Handler.hs b/yesod-core/Yesod/Core/Handler.hs index c3c19f69..1e9cba46 100644 --- a/yesod-core/Yesod/Core/Handler.hs +++ b/yesod-core/Yesod/Core/Handler.hs @@ -253,7 +253,7 @@ import Data.CaseInsensitive (CI, original) import qualified Data.Conduit.List as CL import Control.Monad.Trans.Resource (MonadResource, InternalState, runResourceT, withInternalState, getInternalState, liftResourceT, resourceForkIO) import qualified System.PosixCompat.Files as PC -import Conduit ((.|), runConduit) +import Conduit ((.|), runConduit, sinkLazy) import Data.Conduit (ConduitT, transPipe, Flush (Flush), yield, Void) import qualified Yesod.Core.TypeCache as Cache import qualified Data.Word8 as W8 @@ -1371,7 +1371,7 @@ fileSource = transPipe liftResourceT . fileSourceRaw -- -- @since 1.6.4 fileSourceByteString :: MonadResource m => FileInfo -> m S.ByteString -fileSourceByteString fileInfo = runConduit $ fileSource fileInfo .| CL.foldMap id +fileSourceByteString fileInfo = L.toStrict <$> runConduit (fileSource fileInfo .| sinkLazy) -- | Provide a pure value for the response body. --