diff options
Diffstat (limited to 'Essentials/src/com/earth2me/essentials/EssentialsConf.java')
-rw-r--r-- | Essentials/src/com/earth2me/essentials/EssentialsConf.java | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsConf.java b/Essentials/src/com/earth2me/essentials/EssentialsConf.java index e454db75a..da2a4c6aa 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsConf.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsConf.java @@ -297,7 +297,7 @@ public class EssentialsConf extends YamlConfiguration Future<?> future = EXECUTOR_SERVICE.submit(new WriteRunner(configFile, data, pendingDiskWrites)); //LOGGER.log(Level.INFO, configFile + " prepared for writing in " + (System.nanoTime() - startTime) + " nsec."); - + return future; } @@ -351,16 +351,23 @@ public class EssentialsConf extends YamlConfiguration } } - - final OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(configFile), UTF8); - + final FileOutputStream fos = new FileOutputStream(configFile); try { - writer.write(data); + final OutputStreamWriter writer = new OutputStreamWriter(fos, UTF8); + + try + { + writer.write(data); + } + finally + { + writer.close(); + } } finally { - writer.close(); + fos.close(); } } catch (IOException e) @@ -753,4 +760,5 @@ public class EssentialsConf extends YamlConfiguration { super.set(path, value); } + } |