From 326531d82021a745d676189ffb3d8b0430f42bc0 Mon Sep 17 00:00:00 2001 From: Uwe Schindler Date: Sun, 3 Mar 2013 22:28:25 +0000 Subject: [PATCH] SOLR-4525: Fix remaining issues with windows and not-closed files. Test is now passing. The problem here: The old code that used XML files did not need to close the streams, because XML parsers generally do it (for no good reason)... git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1452146 13f79535-47bb-0310-9956-ffa450edef68 --- .../core/src/java/org/apache/solr/core/CoreContainer.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/solr/core/src/java/org/apache/solr/core/CoreContainer.java b/solr/core/src/java/org/apache/solr/core/CoreContainer.java index 369df7e7ed4..eadcf4b04ea 100644 --- a/solr/core/src/java/org/apache/solr/core/CoreContainer.java +++ b/solr/core/src/java/org/apache/solr/core/CoreContainer.java @@ -49,6 +49,7 @@ import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import org.apache.commons.io.IOUtils; import org.apache.commons.lang.StringUtils; import org.apache.solr.cloud.CloudDescriptor; import org.apache.solr.cloud.CurrentCoreDescriptorProvider; @@ -339,7 +340,12 @@ public class CoreContainer */ public void load(String dir, File configFile) throws FileNotFoundException { this.configFile = configFile; - this.load(dir, new FileInputStream(configFile), configFile.getName().endsWith(".xml"), configFile.getName()); + InputStream in = new FileInputStream(configFile); + try { + this.load(dir, in, configFile.getName().endsWith(".xml"), configFile.getName()); + } finally { + IOUtils.closeQuietly(in); + } } /**