X-Git-Url: http://git.cielonegro.org/gitweb.cgi?p=Lucu.git;a=blobdiff_plain;f=Network%2FHTTP%2FLucu%2FAbortion%2FInternal.hs;h=93fb8da44a70d87375d79bf47cb763385ba75450;hp=6142c23ec6b97f783c906348c40f6ff9f43e0bf8;hb=09fe5429b2a1bcea6d6e57ab1c4a5178807cbacd;hpb=fd36591310abc275fabeb2435a5f1ff0f61caa76 diff --git a/Network/HTTP/Lucu/Abortion/Internal.hs b/Network/HTTP/Lucu/Abortion/Internal.hs index 6142c23..93fb8da 100644 --- a/Network/HTTP/Lucu/Abortion/Internal.hs +++ b/Network/HTTP/Lucu/Abortion/Internal.hs @@ -12,6 +12,7 @@ import qualified Blaze.ByteString.Builder.Char.Utf8 as BB import Control.Arrow.ListArrow import Control.Arrow.Unicode import Control.Exception +import Data.Collections import Data.Text (Text) import qualified Data.Text as T import Data.Typeable @@ -20,7 +21,6 @@ import Network.HTTP.Lucu.DefaultPage import Network.HTTP.Lucu.Headers import Network.HTTP.Lucu.Request import Network.HTTP.Lucu.Response -import Prelude.Unicode import Text.XML.HXT.Arrow.WriteDocument import Text.XML.HXT.Arrow.XmlArrow import Text.XML.HXT.Arrow.XmlState @@ -67,8 +67,9 @@ abortPage conf reqM res abo in BB.fromString html Nothing - → let res' = res { resStatus = aboStatus abo } - res'' = foldl (∘) id [setHeader name value - | (name, value) ← fromHeaders $ aboHeaders abo] res' + → let res' = res { + resStatus = aboStatus abo + , resHeaders = insertMany (aboHeaders abo) (resHeaders res) + } in - getDefaultPage conf reqM res'' + getDefaultPage conf reqM res'