Skip to content

Commit 7e5b3bf

Browse files
committed
decode varint for incoming typeid of Schema messages. colyseus/colyseus#369
1 parent 54fe267 commit 7e5b3bf

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

Assets/Plugins/Colyseus/Room.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -274,10 +274,13 @@ protected async void ParseMessage (byte[] bytes)
274274
}
275275
else if (code == Protocol.ROOM_DATA_SCHEMA)
276276
{
277-
Type messageType = Schema.Context.GetInstance().Get(bytes[1]);
277+
Schema.Iterator it = new Schema.Iterator { Offset = 1 };
278+
var typeId = Decode.DecodeNumber(bytes, it);
278279

280+
Type messageType = Schema.Context.GetInstance().Get(typeId);
279281
var message = (Schema.Schema) Activator.CreateInstance(messageType);
280-
message.Decode(bytes, new Schema.Iterator { Offset = 2 });
282+
283+
message.Decode(bytes, it);
281284

282285
IMessageHandler handler = null;
283286
OnMessageHandlers.TryGetValue("s" + message.GetType(), out handler);

Server/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
},
1515
"dependencies": {
1616
"@colyseus/social": "^0.10.0",
17-
"colyseus": "^0.14.0-alpha.16",
17+
"colyseus": "^0.14.0-alpha.19",
1818
"cors": "^2.8.5",
1919
"express": "^4.13.3",
2020
"express-jwt": "^5.3.1",

0 commit comments

Comments
 (0)