From: Felix Dörre Date: Tue, 7 Nov 2017 20:06:55 +0000 (+0100) Subject: chg: manage more resources explicitly X-Git-Url: https://code.wpia.club/?p=gigi.git;a=commitdiff_plain;h=dd3dc340b33fdf14109bf86853a38951676584ed chg: manage more resources explicitly When a constructor that gets a resource fails, it might prevent the resource from being closed. By giving the resource explicitly to the try-with-resources, this is prevented. Change-Id: I2f8a50773de71f699c00729b51048892a44033e6 --- diff --git a/src/club/wpia/gigi/database/DatabaseConnection.java b/src/club/wpia/gigi/database/DatabaseConnection.java index 20125a81..51e58728 100644 --- a/src/club/wpia/gigi/database/DatabaseConnection.java +++ b/src/club/wpia/gigi/database/DatabaseConnection.java @@ -53,7 +53,7 @@ public class DatabaseConnection { System.out.println("Upgrade 32: loading " + f); if (f.exists()) { StringBuilder sb = new StringBuilder(); - try (Reader r = new InputStreamReader(new FileInputStream(f), "UTF-8")) { + try (FileInputStream fis = new FileInputStream(f); Reader r = new InputStreamReader(fis, "UTF-8")) { int len; char[] buf = new char[4096]; while ((len = r.read(buf)) > 0) { diff --git a/src/club/wpia/gigi/ocsp/OCSPIssuerManager.java b/src/club/wpia/gigi/ocsp/OCSPIssuerManager.java index c83c3311..40e6d67c 100644 --- a/src/club/wpia/gigi/ocsp/OCSPIssuerManager.java +++ b/src/club/wpia/gigi/ocsp/OCSPIssuerManager.java @@ -194,7 +194,7 @@ public class OCSPIssuerManager implements Runnable { ocspCsr.delete(); ocspCrt.delete(); String csr = PEM.encode("CERTIFICATE REQUEST", p10.getEncoded()); - try (Writer w = new OutputStreamWriter(new FileOutputStream(ocspCsr), "UTF-8")) { + try (FileOutputStream fos = new FileOutputStream(ocspCsr); Writer w = new OutputStreamWriter(fos, "UTF-8")) { w.write(csr); } } diff --git a/src/club/wpia/gigi/output/template/Template.java b/src/club/wpia/gigi/output/template/Template.java index d3f5a011..ad53ac2e 100644 --- a/src/club/wpia/gigi/output/template/Template.java +++ b/src/club/wpia/gigi/output/template/Template.java @@ -237,7 +237,7 @@ public class Template implements Outputable { protected void tryReload() { if (source != null && lastLoaded < source.lastModified()) { System.out.println("Reloading template.... " + source); - try (InputStreamReader r = new InputStreamReader(new FileInputStream(source), "UTF-8")) { + try (FileInputStream fis = new FileInputStream(source); InputStreamReader r = new InputStreamReader(fis, "UTF-8")) { data = parse(r).getBlock(null); r.close(); lastLoaded = source.lastModified() + 1000; diff --git a/src/club/wpia/gigi/util/PublicSuffixes.java b/src/club/wpia/gigi/util/PublicSuffixes.java index 401502f7..a86cbbb4 100644 --- a/src/club/wpia/gigi/util/PublicSuffixes.java +++ b/src/club/wpia/gigi/util/PublicSuffixes.java @@ -26,7 +26,7 @@ public class PublicSuffixes { throw new Error("Public Suffix List could not be loaded."); } - try (BufferedReader br = new BufferedReader(new InputStreamReader(res, "UTF-8"))) { + try (InputStreamReader isr = new InputStreamReader(res, "UTF-8"); BufferedReader br = new BufferedReader(isr)) { return new PublicSuffixes(br); } }