Skip to content

Commit d0873e0

Browse files
Missed endianness check
Co-authored-by: Copilot <[email protected]>
1 parent 450ef2e commit d0873e0

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

sdk/eventhub/Azure.Messaging.EventHubs/src/Core/PartitionResolver.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -207,9 +207,9 @@ private static void ComputeHash(ReadOnlySpan<byte> data,
207207
switch (left)
208208
{
209209
case 12:
210-
a += Unsafe.ReadUnaligned<uint>(ref tail);
211-
b += Unsafe.ReadUnaligned<uint>(ref Unsafe.Add(ref tail, 4));
212-
c += Unsafe.ReadUnaligned<uint>(ref Unsafe.Add(ref tail, 8));
210+
a += BitConverter.IsLittleEndian ? Unsafe.ReadUnaligned<uint>(ref tail) : BinaryPrimitives.ReverseEndianness(Unsafe.ReadUnaligned<uint>(ref tail));
211+
b += BitConverter.IsLittleEndian ? Unsafe.ReadUnaligned<uint>(ref Unsafe.Add(ref tail, 4)) : BinaryPrimitives.ReverseEndianness(Unsafe.ReadUnaligned<uint>(ref Unsafe.Add(ref tail, 4)));
212+
c += BitConverter.IsLittleEndian ? Unsafe.ReadUnaligned<uint>(ref Unsafe.Add(ref tail, 8)) : BinaryPrimitives.ReverseEndianness(Unsafe.ReadUnaligned<uint>(ref Unsafe.Add(ref tail, 8)));
213213
break;
214214
case 11:
215215
c += (uint)Unsafe.Add(ref tail, 10) << 16;

0 commit comments

Comments
 (0)