From 79399df6fcba425226530d6c9aa9faf50331d314 Mon Sep 17 00:00:00 2001 From: Zero Dwide Date: Fri, 6 Nov 2015 20:42:13 +0330 Subject: [PATCH] bug fixed: users list size set wrong var result was vector length, but again in next two lines, users_len used to set vector lenght, which was part of bytes related to parsing users. according to https://core.telegram.org/method/users.getUsers : first read => vector signature second read => vector length third + read => loop for parsing users --- TLSharp.Core/Requests/GetUsersRequest.cs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/TLSharp.Core/Requests/GetUsersRequest.cs b/TLSharp.Core/Requests/GetUsersRequest.cs index 4cf4ad2..6fc1810 100644 --- a/TLSharp.Core/Requests/GetUsersRequest.cs +++ b/TLSharp.Core/Requests/GetUsersRequest.cs @@ -27,11 +27,10 @@ namespace TLSharp.Core.Requests public override void OnResponse(BinaryReader reader) { - var code = reader.ReadUInt32(); - var result = reader.ReadInt32(); // vector#1cb5c415 - if (result != 0) + var code = reader.ReadUInt32(); // vector#1cb5c415 + int users_len = reader.ReadInt32(); // vector length + if (users_len != 0) { - int users_len = reader.ReadInt32(); // vector length users = new List(users_len); for (int i = 0; i < users_len; i++) users.Add(TL.Parse(reader));