diff --git a/GameFramework/Resource/ResourceManager.ResourceLoader.cs b/GameFramework/Resource/ResourceManager.ResourceLoader.cs index 4659931bd..c6469ad30 100644 --- a/GameFramework/Resource/ResourceManager.ResourceLoader.cs +++ b/GameFramework/Resource/ResourceManager.ResourceLoader.cs @@ -639,7 +639,7 @@ public byte[] LoadBinaryFromFileSystem(string binaryAssetName) } IFileSystem fileSystem = m_ResourceManager.GetFileSystem(resourceInfo.FileSystemName, resourceInfo.StorageInReadOnly); - byte[] bytes = fileSystem.ReadFile(resourceInfo.ResourceName.FullName); + byte[] bytes = fileSystem.ReadFile(binaryAssetName); if (bytes == null) { return null; diff --git a/GameFramework/Utility/Utility.Encryption.cs b/GameFramework/Utility/Utility.Encryption.cs index ae40afce6..b10477225 100644 --- a/GameFramework/Utility/Utility.Encryption.cs +++ b/GameFramework/Utility/Utility.Encryption.cs @@ -26,7 +26,7 @@ public static class Encryption /// 异或后的二进制流。 public static byte[] GetQuickXorBytes(byte[] bytes, byte[] code) { - return GetXorBytes(bytes, 0, QuickEncryptLength, code); + return GetXorBytes(bytes, 0, Math.Min(QuickEncryptLength, bytes.Length), code); } /// @@ -36,7 +36,7 @@ public static byte[] GetQuickXorBytes(byte[] bytes, byte[] code) /// 异或二进制流。 public static void GetQuickSelfXorBytes(byte[] bytes, byte[] code) { - GetSelfXorBytes(bytes, 0, QuickEncryptLength, code); + GetSelfXorBytes(bytes, 0, Math.Min(QuickEncryptLength, bytes.Length), code); } ///