diff --git a/src/BizHawk.Common/DeepEquality.cs b/src/BizHawk.Common/DeepEquality.cs
index a3c17ad9ca..3d86bcc277 100644
--- a/src/BizHawk.Common/DeepEquality.cs
+++ b/src/BizHawk.Common/DeepEquality.cs
@@ -47,6 +47,27 @@ namespace BizHawk.Common
}
}
+ ///
+ /// test if two arrays are equal in contents; arrays should have same type
+ ///
+ private static bool ArrayEquals(T[] o1, T[] o2)
+ {
+ if (o1.Length != o2.Length)
+ {
+ return false;
+ }
+
+ for (int i = 0; i < o1.Length; i++)
+ {
+ if (!DeepEquals(o1[i], o2[i]))
+ {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
private static readonly MethodInfo ArrayEqualsGeneric
= typeof(DeepEquality).GetMethod("ArrayEquals", BindingFlags.NonPublic | BindingFlags.Static)
?? throw new NullReferenceException();