summaryrefslogtreecommitdiff
path: root/src/server/CGIUtils.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/CGIUtils.hs')
-rw-r--r--src/server/CGIUtils.hs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/server/CGIUtils.hs b/src/server/CGIUtils.hs
index ba41dc180..2e652b4e6 100644
--- a/src/server/CGIUtils.hs
+++ b/src/server/CGIUtils.hs
@@ -4,7 +4,7 @@ module CGIUtils (throwCGIError, handleCGIErrors,
stderrToFile,logError,
outputJSONP,outputEncodedJSONP,
outputPNG,outputBinary,outputBinary',
- outputHTML,outputPlain) where
+ outputHTML,outputPlain,outputText) where
import Control.Exception(Exception(..),SomeException(..),throw)
import Data.Dynamic(Typeable,cast)
@@ -73,7 +73,7 @@ outputEncodedJSONP json =
Nothing -> ("json",json)
Just c -> ("javascript",c ++ "(" ++ json ++ ")")
ct = "application/"++ty++"; charset=utf-8"
- outputStrict ct $ UTF8.encodeString str
+ outputText ct str
outputPNG :: BS.ByteString -> CGI CGIResult
outputPNG = outputBinary' "image/png"
@@ -88,10 +88,12 @@ outputBinary' ct x = do
outputFPS x
outputHTML :: String -> CGI CGIResult
-outputHTML = outputStrict "text/html; charset=utf-8" . UTF8.encodeString
+outputHTML = outputText "text/html; charset=utf-8"
outputPlain :: String -> CGI CGIResult
-outputPlain = outputStrict "text/plain; charset=utf-8" . UTF8.encodeString
+outputPlain = outputText "text/plain; charset=utf-8"
+
+outputText ct = outputStrict ct . UTF8.encodeString
outputStrict :: String -> String -> CGI CGIResult
outputStrict ct x | x == x = do setHeader "Content-Type" ct