From eabac8a33387ba33ea58634e7f9cf57324a4f738 Mon Sep 17 00:00:00 2001 From: miku-666 <74728189+NessieHax@users.noreply.github.com> Date: Thu, 21 Jul 2022 23:50:04 +0200 Subject: [PATCH] Add Unicode detection in StreamDataReader --- MinecraftUSkinEditor/Classes/IO/PCK/PCKFileReader.cs | 2 +- MinecraftUSkinEditor/Classes/Utils/StreamDataReader.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/MinecraftUSkinEditor/Classes/IO/PCK/PCKFileReader.cs b/MinecraftUSkinEditor/Classes/IO/PCK/PCKFileReader.cs index f1cb4a9b..036a69ac 100644 --- a/MinecraftUSkinEditor/Classes/IO/PCK/PCKFileReader.cs +++ b/MinecraftUSkinEditor/Classes/IO/PCK/PCKFileReader.cs @@ -73,7 +73,7 @@ namespace PckStudio.Classes.IO internal string ReadString(Stream stream) { int len = ReadInt(stream); - string s = ReadString(stream, len * 2, Encoding.BigEndianUnicode); + string s = ReadString(stream, len, Encoding.BigEndianUnicode); ReadInt(stream); // padding return s; } diff --git a/MinecraftUSkinEditor/Classes/Utils/StreamDataReader.cs b/MinecraftUSkinEditor/Classes/Utils/StreamDataReader.cs index 41209787..c798a2bd 100644 --- a/MinecraftUSkinEditor/Classes/Utils/StreamDataReader.cs +++ b/MinecraftUSkinEditor/Classes/Utils/StreamDataReader.cs @@ -17,7 +17,7 @@ namespace PckStudio.Classes.Utils protected static string ReadString(Stream stream, int length, Encoding encoding) { - byte[] buffer = ReadBytes(stream, length); + byte[] buffer = ReadBytes(stream, length << Convert.ToInt32(encoding is UnicodeEncoding)); return encoding.GetString(buffer); }