From 895b2bd0672bafa8a5fb65d4a7dd6a9104ff250d Mon Sep 17 00:00:00 2001 From: snowleo Date: Fri, 23 Mar 2012 14:22:10 +0100 Subject: Fix utf-8 decoding problems. --- .../src/com/earth2me/essentials/EssentialsConf.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/EssentialsConf.java b/Essentials/src/com/earth2me/essentials/EssentialsConf.java index 846a7b4b0..89fb53d34 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsConf.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsConf.java @@ -126,23 +126,25 @@ public class EssentialsConf extends YamlConfiguration { buffer.rewind(); data.clear(); - LOGGER.log(Level.INFO, "File {0} is not utf-8 encoded, trying {1}", new Object[] - { - configFile.getAbsolutePath().toString(), Charset.defaultCharset().displayName() - }); + LOGGER.log(Level.INFO, "File " + configFile.getAbsolutePath().toString() + "is not utf-8 encoded, trying " + Charset.defaultCharset().displayName()); decoder = Charset.defaultCharset().newDecoder(); result = decoder.decode(buffer, data, true); if (result.isError()) { throw new InvalidConfigurationException("Invalid Characters in file " + configFile.getAbsolutePath().toString()); - } else { + } + else + { decoder.flush(data); } - } else { + } + else + { decoder.flush(data); } + final int end = data.position(); data.rewind(); - super.loadFromString(data.toString()); + super.loadFromString(data.subSequence(0, end).toString()); } finally { -- cgit v1.2.3