Author: cstamas
Date: Wed Mar 30 10:51:01 2011
New Revision: 1086904

URL: http://svn.apache.org/viewvc?rev=1086904&view=rev
Log:
MINDEXER-13: Patch applied (by Jesse Glick), thanks. IndexDataReader.readIndex 
issue moved to MINDEXER-20.

Modified:
    
maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java

Modified: 
maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
URL: 
http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java?rev=1086904&r1=1086903&r2=1086904&view=diff
==============================================================================
--- 
maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
 (original)
+++ 
maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
 Wed Mar 30 10:51:01 2011
@@ -49,8 +49,24 @@ public class IndexDataReader
         throws IOException
     {
         BufferedInputStream bis = new BufferedInputStream( is, 1024 * 8 );
-        GZIPInputStream gis = new GZIPInputStream( bis, 2 * 1024 );
-        this.dis = new DataInputStream( gis );
+
+        // MINDEXER-13
+        // LightweightHttpWagon may have performed automatic decompression
+        // Handle it transparently
+        bis.mark( 2 );
+        InputStream data;
+        if ( bis.read() == 0x1f && bis.read() == 0x8b ) // 
GZIPInputStream.GZIP_MAGIC
+        {
+            bis.reset();
+            data = new GZIPInputStream( bis, 2 * 1024 );
+        }
+        else
+        {
+            bis.reset();
+            data = bis;
+        }
+
+        this.dis = new DataInputStream( data );
     }
 
     public IndexDataReadResult readIndex( IndexWriter w, IndexingContext 
context )


Reply via email to