diff --git a/skel_common/readme_changelog.txt b/skel_common/readme_changelog.txt index 82cd0b5..eb2399e 100644 --- a/skel_common/readme_changelog.txt +++ b/skel_common/readme_changelog.txt @@ -3,6 +3,7 @@ Changelog ???: - Added LF to CR-LF conversion for *.xml.append, *.xml, and *.txt - Added a Validate warning for text files with LF line endings +- Fixed data loss when decoding Windows-1252 text with accented characters 1.0: - Changed mod list to a table with checkboxes diff --git a/src/main/java/net/vhati/modmanager/core/ModUtilities.java b/src/main/java/net/vhati/modmanager/core/ModUtilities.java index c72eef0..45d9c15 100644 --- a/src/main/java/net/vhati/modmanager/core/ModUtilities.java +++ b/src/main/java/net/vhati/modmanager/core/ModUtilities.java @@ -93,6 +93,8 @@ public class ModUtilities { Map errorMap = new LinkedHashMap(); for ( String guess : new String[] {"UTF-8", "windows-1252"} ) { try { + byteBuffer.rewind(); + byteBuffer.limit( allBytes.length ); CharsetDecoder decoder = Charset.forName( guess ).newDecoder(); result = decoder.decode( byteBuffer ).toString(); encoding = guess;