-import Data.ByteString.Base (ByteString, toForeignPtr, w2c, inlinePerformIO)
-import qualified Data.ByteString.Char8 as C8
+import qualified Data.ByteString as Strict (ByteString)
+import Data.ByteString.Internal (toForeignPtr, w2c, inlinePerformIO)
+import qualified Data.ByteString.Char8 as C8 hiding (ByteString)
mkHeaders [] m = m
mkHeaders ((key, val):xs) m = mkHeaders xs $
case M.lookup (toNCBS key) m of
Nothing -> M.insert (toNCBS key) val m
Just old -> M.insert (toNCBS key) (merge old val) m
where
mkHeaders [] m = m
mkHeaders ((key, val):xs) m = mkHeaders xs $
case M.lookup (toNCBS key) m of
Nothing -> M.insert (toNCBS key) val m
Just old -> M.insert (toNCBS key) (merge old val) m
where
| otherwise = C8.concat [a, C8.pack ", ", b]
| otherwise = C8.concat [a, C8.pack ", ", b]