mirror of
https://github.com/wiz0u/WTelegramClient.git
synced 2025-12-06 06:52:01 +01:00
CollectUsersChats allows null dictionaries
This commit is contained in:
parent
8a9f886b62
commit
2b65e8f1ed
|
|
@ -17,17 +17,19 @@ namespace TL
|
||||||
internal IDictionary<long, ChatBase> _chats;
|
internal IDictionary<long, ChatBase> _chats;
|
||||||
protected internal override IPeerInfo UserOrChat(Dictionary<long, User> users, Dictionary<long, ChatBase> chats)
|
protected internal override IPeerInfo UserOrChat(Dictionary<long, User> users, Dictionary<long, ChatBase> chats)
|
||||||
{
|
{
|
||||||
lock (_users)
|
if (_users != null)
|
||||||
foreach (var user in users.Values)
|
lock (_users)
|
||||||
if (user != null)
|
foreach (var user in users.Values)
|
||||||
if (!user.flags.HasFlag(User.Flags.min) || !_users.TryGetValue(user.id, out var prevUser) || prevUser.flags.HasFlag(User.Flags.min))
|
if (user != null)
|
||||||
_users[user.id] = user;
|
if (!user.flags.HasFlag(User.Flags.min) || !_users.TryGetValue(user.id, out var prevUser) || prevUser.flags.HasFlag(User.Flags.min))
|
||||||
lock (_chats)
|
_users[user.id] = user;
|
||||||
foreach (var kvp in chats)
|
if (_chats != null)
|
||||||
if (kvp.Value is not Channel channel)
|
lock (_chats)
|
||||||
_chats[kvp.Key] = kvp.Value;
|
foreach (var kvp in chats)
|
||||||
else if (!channel.flags.HasFlag(Channel.Flags.min) || !_chats.TryGetValue(channel.id, out var prevChat) || prevChat is not Channel prevChannel || prevChannel.flags.HasFlag(Channel.Flags.min))
|
if (kvp.Value is not Channel channel)
|
||||||
_chats[kvp.Key] = channel;
|
_chats[kvp.Key] = kvp.Value;
|
||||||
|
else if (!channel.flags.HasFlag(Channel.Flags.min) || !_chats.TryGetValue(channel.id, out var prevChat) || prevChat is not Channel prevChannel || prevChannel.flags.HasFlag(Channel.Flags.min))
|
||||||
|
_chats[kvp.Key] = channel;
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue