diff options
| author | Rapptz <[email protected]> | 2017-01-03 20:15:56 -0500 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2017-01-03 20:17:58 -0500 |
| commit | c863d93f69090e0f494ffa1b6846cddc3668f779 (patch) | |
| tree | 3c0371a50be47cc222b28fdcc8e261dffc0225e9 /discord/state.py | |
| parent | [commands] Don't use removed is_private attribute in core decorators. (diff) | |
| download | discord.py-c863d93f69090e0f494ffa1b6846cddc3668f779.tar.xz discord.py-c863d93f69090e0f494ffa1b6846cddc3668f779.zip | |
Fix bug that made member roles go missing.
Diffstat (limited to 'discord/state.py')
| -rw-r--r-- | discord/state.py | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/discord/state.py b/discord/state.py index 31f29545..e839d5ab 100644 --- a/discord/state.py +++ b/discord/state.py @@ -330,7 +330,7 @@ class ConnectionState: # skip these useless cases. return - member = self._make_member(guild, data) + member = Member(guild=guild, data=data, state=self) guild._add_member(member) old_member = copy.copy(member) @@ -402,19 +402,9 @@ class ConnectionState: else: self.dispatch('group_remove', channel, user) - def _make_member(self, guild, data): - roles = [guild.default_role] - for roleid in data.get('roles', []): - role = utils.get(guild.roles, id=roleid) - if role is not None: - roles.append(role) - - data['roles'] = sorted(roles, key=lambda r: r.id) - return Member(guild=guild, data=data, state=self) - def parse_guild_member_add(self, data): guild = self._get_guild(int(data['guild_id'])) - member = self._make_member(guild, data) + member = Member(guild=guild, data=data, state=self) guild._add_member(member) guild._member_count += 1 self.dispatch('member_join', member) @@ -605,7 +595,7 @@ class ConnectionState: guild = self._get_guild(int(data['guild_id'])) members = data.get('members', []) for member in members: - m = self._make_member(guild, member) + m = Member(guild=guild, data=member, state=self) existing = guild.get_member(m.id) if existing is None or existing.joined_at is None: guild._add_member(m) |