summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2012-03-23 14:22:10 +0100
committersnowleo <schneeleo@gmail.com>2012-03-23 14:22:10 +0100
commit895b2bd0672bafa8a5fb65d4a7dd6a9104ff250d (patch)
tree91d3bf0e7e180b64350fc07e336c8d6eca632a3e
parent52eb05c92529b26e578859070fce58f6227122ef (diff)
downloadEssentials-895b2bd0672bafa8a5fb65d4a7dd6a9104ff250d.tar
Essentials-895b2bd0672bafa8a5fb65d4a7dd6a9104ff250d.tar.gz
Essentials-895b2bd0672bafa8a5fb65d4a7dd6a9104ff250d.tar.lz
Essentials-895b2bd0672bafa8a5fb65d4a7dd6a9104ff250d.tar.xz
Essentials-895b2bd0672bafa8a5fb65d4a7dd6a9104ff250d.zip
Fix utf-8 decoding problems.
-rw-r--r--Essentials/src/com/earth2me/essentials/EssentialsConf.java16
1 files 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
{