diff options
Diffstat (limited to 'src/server/PGFService.hs')
| -rw-r--r-- | src/server/PGFService.hs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/server/PGFService.hs b/src/server/PGFService.hs index 5e673ca75..44f0b7e14 100644 --- a/src/server/PGFService.hs +++ b/src/server/PGFService.hs @@ -7,8 +7,9 @@ import PGF (PGF) import qualified PGF import PGF.Lexing import Cache -import CGIUtils(outputJSONP,outputPlain,outputHTML,logError,outputBinary, - outputBinary',handleCGIErrors,throwCGIError,stderrToFile) +import CGIUtils(outputJSONP,outputPlain,outputHTML,outputText, + outputBinary,outputBinary', + logError,handleCGIErrors,throwCGIError,stderrToFile) import CGI(CGI,readInput,getInput,getVarWithDefault, CGIResult,requestAcceptLanguage,handleErrors,setHeader, Accept(..),Language(..),negotiate,liftIO) @@ -777,9 +778,11 @@ parseTree pgf lang opts tree = PGF.graphvizParseTree pgf lang opts tree doDepTree path pgf fmt lang tree = do lbls <- either (const Nothing) Just # liftIO (tryIOError readDepLabels) let vis = PGF.graphvizDependencyTree fmt False lbls Nothing pgf lang tree - if fmt `elem` ["png","gif","svg","gv"] + if fmt `elem` ["png","gif","gv"] then outputGraphviz vis - else outputPlain vis + else if fmt=="svg" + then outputText "image/svg+xml" vis + else outputPlain vis where labelsPath = dropExtension path <.> "labels" readDepLabels = PGF.getDepLabels . lines # readFile labelsPath |
