Skip to content

Commit f487de2

Browse files
fix: changing MessageHeader size type from short to ushort to avoid overflows on messages larger than 32k (#1292)
Co-authored-by: Andrew Spiering <[email protected]>
1 parent 3ebc1b1 commit f487de2

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

com.unity.netcode.gameobjects/Runtime/Messaging/MessageHeader.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@ internal struct MessageHeader
1616
/// <summary>
1717
/// The total size of the message, NOT including the header.
1818
/// </summary>
19-
public short MessageSize;
19+
public ushort MessageSize;
2020
}
2121
}

com.unity.netcode.gameobjects/Runtime/Messaging/MessagingSystem.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@ internal unsafe int SendMessage<TMessageType, TClientIdListType>(in TMessageType
354354
writeQueueItem.Writer.TryBeginWrite(sizeof(MessageHeader) + tmpSerializer.Length);
355355
var header = new MessageHeader
356356
{
357-
MessageSize = (short)tmpSerializer.Length,
357+
MessageSize = (ushort)tmpSerializer.Length,
358358
MessageType = m_MessageTypes[typeof(TMessageType)],
359359
};
360360

com.unity.netcode.gameobjects/Tests/Editor/Messaging/MessageReceivingTests.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public void WhenHandlingAMessage_ReceiveMethodIsCalled()
7878
{
7979
var messageHeader = new MessageHeader
8080
{
81-
MessageSize = (short)UnsafeUtility.SizeOf<TestMessage>(),
81+
MessageSize = (ushort)UnsafeUtility.SizeOf<TestMessage>(),
8282
MessageType = m_MessagingSystem.GetMessageType(typeof(TestMessage)),
8383
};
8484
var message = GetMessage();
@@ -109,7 +109,7 @@ public void WhenHandlingIncomingData_ReceiveIsNotCalledBeforeProcessingIncomingM
109109
};
110110
var messageHeader = new MessageHeader
111111
{
112-
MessageSize = (short)UnsafeUtility.SizeOf<TestMessage>(),
112+
MessageSize = (ushort)UnsafeUtility.SizeOf<TestMessage>(),
113113
MessageType = m_MessagingSystem.GetMessageType(typeof(TestMessage)),
114114
};
115115
var message = GetMessage();
@@ -143,7 +143,7 @@ public void WhenReceivingAMessageAndProcessingMessageQueue_ReceiveMethodIsCalled
143143
};
144144
var messageHeader = new MessageHeader
145145
{
146-
MessageSize = (short)UnsafeUtility.SizeOf<TestMessage>(),
146+
MessageSize = (ushort)UnsafeUtility.SizeOf<TestMessage>(),
147147
MessageType = m_MessagingSystem.GetMessageType(typeof(TestMessage)),
148148
};
149149
var message = GetMessage();
@@ -179,7 +179,7 @@ public void WhenReceivingMultipleMessagesAndProcessingMessageQueue_ReceiveMethod
179179
};
180180
var messageHeader = new MessageHeader
181181
{
182-
MessageSize = (short)UnsafeUtility.SizeOf<TestMessage>(),
182+
MessageSize = (ushort)UnsafeUtility.SizeOf<TestMessage>(),
183183
MessageType = m_MessagingSystem.GetMessageType(typeof(TestMessage)),
184184
};
185185
var message = GetMessage();

0 commit comments

Comments
 (0)