diff options
Diffstat (limited to 'discord/state.py')
| -rw-r--r-- | discord/state.py | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/discord/state.py b/discord/state.py index 1157a751..fa296f82 100644 --- a/discord/state.py +++ b/discord/state.py @@ -175,17 +175,16 @@ class ConnectionState: self.messages.remove(found) def parse_message_update(self, data): - older_message = self._get_message(data.get('id')) - if older_message is not None: + message = self._get_message(data.get('id')) + if message is not None: + older_message = copy.copy(message) if 'content' not in data: # embed only edit - message = copy.copy(older_message) message.embeds = data['embeds'] else: - message = Message(channel=older_message.channel, **data) + message._update(channel=message.channel, **data) + self.dispatch('message_edit', older_message, message) - # update the older message - older_message = message def parse_presence_update(self, data): server = self._get_server(data.get('guild_id')) |