diff --git a/PKHeX.Core/PKM/Shared/GBPKML.cs b/PKHeX.Core/PKM/Shared/GBPKML.cs index 5b70220dc..4b546f1b2 100644 --- a/PKHeX.Core/PKM/Shared/GBPKML.cs +++ b/PKHeX.Core/PKM/Shared/GBPKML.cs @@ -63,11 +63,11 @@ protected override byte[] GetNonNickname(int language) return data; } - private void SetString(ReadOnlySpan value, Span destBuffer, int maxLength, StringConverterOption option = StringConverterOption.None) + private int SetString(ReadOnlySpan value, Span destBuffer, int maxLength, StringConverterOption option = StringConverterOption.None) { if (Korean) - StringConverter2KOR.SetString(value, destBuffer, maxLength, option); - StringConverter12.SetString(destBuffer, value, maxLength, Japanese, option); + return StringConverter2KOR.SetString(destBuffer, value, maxLength, option); + return StringConverter12.SetString(destBuffer, value, maxLength, Japanese, option); } public sealed override string Nickname diff --git a/PKHeX.Core/PKM/Strings/StringConverter2KOR.cs b/PKHeX.Core/PKM/Strings/StringConverter2KOR.cs index 1d1a7b322..3c84988ec 100644 --- a/PKHeX.Core/PKM/Strings/StringConverter2KOR.cs +++ b/PKHeX.Core/PKM/Strings/StringConverter2KOR.cs @@ -65,12 +65,13 @@ private static int LoadString(ReadOnlySpan data, Span result) /// /// Converts a string to Generation 1 encoded data. /// - /// Decoded string. /// Span of bytes to write encoded string data + /// Decoded string. /// Maximum length of the input /// Buffer pre-formatting option /// Encoded data. - public static int SetString(ReadOnlySpan value, Span destBuffer, int maxLength, StringConverterOption option = StringConverterOption.Clear50) + public static int SetString(Span destBuffer, ReadOnlySpan value, int maxLength, + StringConverterOption option = StringConverterOption.Clear50) { if (option is StringConverterOption.ClearZero) destBuffer.Clear(); @@ -116,7 +117,7 @@ public static int SetString(ReadOnlySpan value, Span destBuffer, int } } - if (destBuffer.Length != value.Length) + if (ctr < value.Length) destBuffer[ctr++] = G1TerminatorCode; return ctr; } diff --git a/PKHeX.Core/Saves/SAV2.cs b/PKHeX.Core/Saves/SAV2.cs index 2d02fade1..055c48fcb 100644 --- a/PKHeX.Core/Saves/SAV2.cs +++ b/PKHeX.Core/Saves/SAV2.cs @@ -738,7 +738,7 @@ public override string GetString(ReadOnlySpan data) public override int SetString(Span destBuffer, ReadOnlySpan value, int maxLength, StringConverterOption option) { if (Korean) - return StringConverter2KOR.SetString(value, destBuffer, maxLength, option); + return StringConverter2KOR.SetString(destBuffer, value, maxLength, option); return StringConverter12.SetString(destBuffer, value, maxLength, Japanese, option); }