[freenet-cvs] r17729 - trunk/freenet/src/freenet/clients/http/filter

nextgens at freenetproject.org nextgens at freenetproject.org
Sat Feb 9 00:57:07 UTC 2008


Author: nextgens
Date: 2008-02-09 00:57:07 +0000 (Sat, 09 Feb 2008)
New Revision: 17729

Modified:
   trunk/freenet/src/freenet/clients/http/filter/ContentFilter.java
   trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java
Log:
PNGFilter: Fix the data-corruption bug and re-enable the stripper

Modified: trunk/freenet/src/freenet/clients/http/filter/ContentFilter.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/filter/ContentFilter.java	2008-02-09 00:55:21 UTC (rev 17728)
+++ trunk/freenet/src/freenet/clients/http/filter/ContentFilter.java	2008-02-09 00:57:07 UTC (rev 17729)
@@ -54,7 +54,7 @@
 		
 		// PNG - has a filter
 		register(new MIMEType("image/png", "png", new String[0], new String[0],
-				true, false, new PNGFilter(false, false, false)/* FIXME: reenable when they work */, null, false, false, false, false, true, false,
+				true, false, new PNGFilter(true, true, false)/* FIXME: reenable when they work */, null, false, false, false, false, true, false,
 				l10n("imagePngReadAdvice"),
 				l10n("imagePngWriteAdvice"), false, null, null));
 		

Modified: trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java	2008-02-09 00:55:21 UTC (rev 17728)
+++ trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java	2008-02-09 00:57:07 UTC (rev 17729)
@@ -16,12 +16,14 @@
 import freenet.support.HexUtil;
 import freenet.support.Logger;
 import freenet.support.LoggerHook.InvalidThresholdException;
+import freenet.support.OutputStreamLogger;
 import freenet.support.api.Bucket;
 import freenet.support.api.BucketFactory;
 import freenet.support.io.ArrayBucketFactory;
 import freenet.support.io.BucketTools;
 import freenet.support.io.Closer;
 import freenet.support.io.FileBucket;
+import freenet.support.io.FileUtil;
 import java.io.BufferedOutputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.DataOutputStream;
@@ -65,7 +67,6 @@
 		try {
 			readFilter(data, bf, charset, otherParams, cb, deleteText, deleteTimestamp, checkCRCs, os);
 			os.flush();
-			os.close();
 		} finally {
 			Closer.close(os);
 		}
@@ -226,20 +227,16 @@
 					if(logMINOR)
 						Logger.minor(this, "Writing " + chunkTypeString + " (" + baos.size() + ") to the output bucket");
 					baos.writeTo(output);
+					baos.flush();
 				}
 				lastChunkType = chunkTypeString;
 			}
 			
 			dis.close();
-			if(dos != null) {
-				output.flush();
-				output.close();
-			}
 		} finally {
 			Closer.close(dis);
 			Closer.close(bis);
 			Closer.close(is);
-			Closer.close(output);
 		}
 		return data;
 	}




More information about the cvs mailing list