diff --git a/ChangeLog b/ChangeLog index 5762b8d..5234cf6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2017-05-27 Natalia Portillo + + * CompareBytes.cs: + * DiscImageChef.Helpers.csproj: Refactor: Moved CompareBytes + to Helpers. + 2017-05-19 Natalia Portillo * Swapping.cs: diff --git a/CompareBytes.cs b/CompareBytes.cs new file mode 100644 index 0000000..74413d8 --- /dev/null +++ b/CompareBytes.cs @@ -0,0 +1,66 @@ +// /*************************************************************************** +// The Disc Image Chef +// ---------------------------------------------------------------------------- +// +// Filename : CompareBytes.cs +// Author(s) : Natalia Portillo +// +// Component : Component +// +// --[ Description ] ---------------------------------------------------------- +// +// Description +// +// --[ License ] -------------------------------------------------------------- +// +// This library is free software; you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as +// published by the Free Software Foundation; either version 2.1 of the +// License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, see . +// +// ---------------------------------------------------------------------------- +// Copyright © 2011-2017 Natalia Portillo +// ****************************************************************************/ + +namespace DiscImageChef +{ + public static partial class ArrayHelpers + { + public static void CompareBytes(out bool different, out bool sameSize, byte[] compareArray1, byte[] compareArray2) + { + different = false; + sameSize = true; + + long leastBytes; + if(compareArray1.LongLength < compareArray2.LongLength) + { + sameSize = false; + leastBytes = compareArray1.LongLength; + } + else if(compareArray1.LongLength > compareArray2.LongLength) + { + sameSize = false; + leastBytes = compareArray2.LongLength; + } + else + leastBytes = compareArray1.LongLength; + + for(long i = 0; i < leastBytes; i++) + { + if(compareArray1[i] != compareArray2[i]) + { + different = true; + return; + } + } + } + } +} diff --git a/DiscImageChef.Helpers.csproj b/DiscImageChef.Helpers.csproj index 832c00a..13ee39b 100644 --- a/DiscImageChef.Helpers.csproj +++ b/DiscImageChef.Helpers.csproj @@ -44,6 +44,7 @@ +