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);
}
///