diff options
author | V <vendicated@riseup.net> | 2023-05-28 21:59:22 +0200 |
---|---|---|
committer | V <vendicated@riseup.net> | 2023-05-28 22:02:47 +0200 |
commit | 6300198a5463ab38da81906bda634addf4c8a369 (patch) | |
tree | 72f6f8fb47e6cc42b8b76c6e7ffe6f6b9e4ea311 /src/plugins | |
parent | 458c7ed4c5035e125a497c192e71737f946ff302 (diff) | |
download | Vencord-6300198a5463ab38da81906bda634addf4c8a369.tar.gz Vencord-6300198a5463ab38da81906bda634addf4c8a369.tar.bz2 Vencord-6300198a5463ab38da81906bda634addf4c8a369.zip |
MessageLinkEmbeds: Fix niche unclaimed account bug
This plugin fires MESSAGE_UPDATE events for messages containing message
links (to rerender them). If the updated message is an interaction, it
contains message.interaction.user. If the one who ran the command is
you, message.interaction.user will be you and the email in this data is
always set to null. Discord seems to update the local user data with
this user. So essentially, in the above described edge case it would
update the current user to have no email (only locally, in memory. There
is 0 risk for your account, it was just a temporary visual bug) which
would cause the unclaimed account banner to appear.
This commit fixes this by simply omitting the interaction field from the
MESSAGE_UPDATE event
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/hideAttachments.tsx | 8 | ||||
-rw-r--r-- | src/plugins/messageLinkEmbeds.tsx | 2 |
2 files changed, 3 insertions, 7 deletions
diff --git a/src/plugins/hideAttachments.tsx b/src/plugins/hideAttachments.tsx index 944da65..83a924e 100644 --- a/src/plugins/hideAttachments.tsx +++ b/src/plugins/hideAttachments.tsx @@ -20,7 +20,7 @@ import { get, set } from "@api/DataStore"; import { addButton, removeButton } from "@api/MessagePopover"; import { Devs } from "@utils/constants"; import definePlugin from "@utils/types"; -import { ChannelStore, FluxDispatcher } from "@webpack/common"; +import { ChannelStore } from "@webpack/common"; let style: HTMLStyleElement; @@ -101,11 +101,5 @@ export default definePlugin({ await saveHiddenMessages(ids); await this.buildCss(); - - // update is necessary to rerender the PopOver - FluxDispatcher.dispatch({ - type: "MESSAGE_UPDATE", - message: { id } - }); } }); diff --git a/src/plugins/messageLinkEmbeds.tsx b/src/plugins/messageLinkEmbeds.tsx index d1fcbf3..5fae234 100644 --- a/src/plugins/messageLinkEmbeds.tsx +++ b/src/plugins/messageLinkEmbeds.tsx @@ -225,6 +225,8 @@ function MessageEmbedAccessory({ message }: { message: Message; }) { } else { const msg = { ...message } as any; delete msg.embeds; + delete msg.interaction; + messageFetchQueue.push(() => fetchMessage(channelID, messageID) .then(m => m && FluxDispatcher.dispatch({ type: "MESSAGE_UPDATE", |