Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal

On branch  : 

http://hackage.haskell.org/trac/ghc/changeset/38bd5efb2d6bffd638e0f94eeb16a6abab4ff1c1

>---------------------------------------------------------------

commit 38bd5efb2d6bffd638e0f94eeb16a6abab4ff1c1
Author: Duncan Coutts <[email protected]>
Date:   Wed Oct 27 09:50:34 2010 +0000

    Add an extra note about the http proxy decompression issue

>---------------------------------------------------------------

 cabal-install/Distribution/Client/GZipUtils.hs |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/cabal-install/Distribution/Client/GZipUtils.hs 
b/cabal-install/Distribution/Client/GZipUtils.hs
index c969c11..e4ce1aa 100644
--- a/cabal-install/Distribution/Client/GZipUtils.hs
+++ b/cabal-install/Distribution/Client/GZipUtils.hs
@@ -25,11 +25,17 @@ import Codec.Compression.Zlib.Internal
 -- that it is already decompressed. Caller should make sanity checks
 -- to verify that it is not, in fact, garbage.
 --
+-- This is to deal with http proxies that lie to us and transparently
+-- decompress without removing the content-encoding header. See:
+-- <http://hackage.haskell.org/trac/hackage/ticket/686>
+--
 maybeDecompress :: ByteString -> ByteString
 maybeDecompress bytes = foldStream $ decompressWithErrors gzipOrZlibFormat 
defaultDecompressParams bytes
   where
     -- DataError at the beginning of the stream probably means that stream is 
not compressed.
     -- Returning it as-is.
+    -- TODO: alternatively, we might consider looking for the two magic bytes
+    -- at the beginning of the gzip header.
     foldStream (StreamError DataError _) = bytes
     foldStream somethingElse = doFold somethingElse
 



_______________________________________________
Cvs-libraries mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-libraries

Reply via email to