diff --git a/SabreTools.Serialization/Extensions/XZ.cs b/SabreTools.Serialization/Extensions/XZ.cs index 5bb4e9d0..485399f8 100644 --- a/SabreTools.Serialization/Extensions/XZ.cs +++ b/SabreTools.Serialization/Extensions/XZ.cs @@ -1,3 +1,5 @@ +using System.Collections.Generic; + namespace SabreTools.Data.Extensions { public static class XZ @@ -17,15 +19,15 @@ namespace SabreTools.Data.Extensions if (maxSize > 9) maxSize = 9; - ulong output = value[0] & 0x7F; + ulong output = (ulong)(value[0] & 0x7F); int i = 0; - while (value[i++] & 0x80 != 0) + while ((value[i++] & 0x80) != 0) { if (i >= maxSize || value[i] == 0x00) return 0; - output |= (value[i] & 0x7F) << (i * 7); + output |= (ulong)(value[i] & 0x7F) << (i * 7); } return output; @@ -44,10 +46,9 @@ namespace SabreTools.Data.Extensions var output = new List(); - int i = 0; while (value >= 0x80) { - output.Add((byte)value | 0x80); + output.Add((byte)(value | 0x80)); value >>= 7; } @@ -55,4 +56,4 @@ namespace SabreTools.Data.Extensions return [.. output]; } } -} \ No newline at end of file +} diff --git a/SabreTools.Serialization/Models/XZ/Constants.cs b/SabreTools.Serialization/Models/XZ/Constants.cs index d8d0c5b9..4c6e4e10 100644 --- a/SabreTools.Serialization/Models/XZ/Constants.cs +++ b/SabreTools.Serialization/Models/XZ/Constants.cs @@ -6,4 +6,4 @@ namespace SabreTools.Data.Models.XZ public static readonly byte[] FooterSignatureBytes = [0x59, 0x5A]; } -} \ No newline at end of file +} diff --git a/SabreTools.Serialization/Models/XZ/Record.cs b/SabreTools.Serialization/Models/XZ/Record.cs index 1f3aab4b..f25c1944 100644 --- a/SabreTools.Serialization/Models/XZ/Record.cs +++ b/SabreTools.Serialization/Models/XZ/Record.cs @@ -6,7 +6,7 @@ namespace SabreTools.Data.Models.XZ /// Unpadded size of the block /// /// Stored as a variable-length integer - public byte UnpaddedSize { get; set; } + public byte[]? UnpaddedSize { get; set; } /// /// Uncompressed size of the block