From 9b35942c175e271faa52627896c86e5edc46362c Mon Sep 17 00:00:00 2001 From: Andrew Gaul Date: Tue, 11 Dec 2012 18:25:31 -0800 Subject: [PATCH] Buffer all InputStreams and Readers Also prefer generic Reader over InputStreamReader. --- src/org/fdroid/fdroid/Hasher.java | 4 +++- src/org/fdroid/fdroid/RepoXMLHandler.java | 9 +++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/org/fdroid/fdroid/Hasher.java b/src/org/fdroid/fdroid/Hasher.java index 6558662ce..90ebd761e 100644 --- a/src/org/fdroid/fdroid/Hasher.java +++ b/src/org/fdroid/fdroid/Hasher.java @@ -21,6 +21,7 @@ package org.fdroid.fdroid; import java.io.File; +import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.InputStream; import java.security.MessageDigest; @@ -62,7 +63,8 @@ public class Hasher { byte[] buffer = new byte[1024]; int read = 0; try { - InputStream is = new FileInputStream(file); + InputStream is = new BufferedInputStream( + new FileInputStream(file)); while ((read = is.read(buffer)) > 0) { digest.update(buffer, 0, read); } diff --git a/src/org/fdroid/fdroid/RepoXMLHandler.java b/src/org/fdroid/fdroid/RepoXMLHandler.java index 307b8c2af..c3a09aebc 100644 --- a/src/org/fdroid/fdroid/RepoXMLHandler.java +++ b/src/org/fdroid/fdroid/RepoXMLHandler.java @@ -21,13 +21,14 @@ package org.fdroid.fdroid; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; +import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOException; import java.io.InputStream; -import java.io.InputStreamReader; import java.io.OutputStream; +import java.io.Reader; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; @@ -380,9 +381,9 @@ public class RepoXMLHandler extends DefaultHandler { RepoXMLHandler handler = new RepoXMLHandler(repo.id, apps); xr.setContentHandler(handler); - InputStreamReader isr = new FileReader(new File( - ctx.getFilesDir() + "/tempindex.xml")); - InputSource is = new InputSource(isr); + Reader r = new BufferedReader(new FileReader(new File( + ctx.getFilesDir() + "/tempindex.xml"))); + InputSource is = new InputSource(r); xr.parse(is); if (handler.pubkey != null && repo.pubkey == null) {