3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-10 12:25:02 +00:00

fix: fix errors when unloading certain plugins after beforeLoad but before afterLoad

This commit is contained in:
Dragory 2021-10-31 16:48:32 +02:00
parent 4f811f04e1
commit f92ee9ba4f
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
5 changed files with 22 additions and 10 deletions

View file

@ -307,13 +307,23 @@ export const LogsPlugin = zeppelinGuildPlugin<LogsPluginType>()({
},
beforeUnload(pluginData) {
pluginData.state.guildLogs.removeListener("log", pluginData.state.logListener);
if (pluginData.state.logListener) {
pluginData.state.guildLogs.removeListener("log", pluginData.state.logListener);
}
pluginData.state.savedMessages.events.off("delete", pluginData.state.onMessageDeleteFn);
pluginData.state.savedMessages.events.off("deleteBulk", pluginData.state.onMessageDeleteBulkFn);
pluginData.state.savedMessages.events.off("update", pluginData.state.onMessageUpdateFn);
if (pluginData.state.onMessageDeleteFn) {
pluginData.state.savedMessages.events.off("delete", pluginData.state.onMessageDeleteFn);
}
if (pluginData.state.onMessageDeleteBulkFn) {
pluginData.state.savedMessages.events.off("deleteBulk", pluginData.state.onMessageDeleteBulkFn);
}
if (pluginData.state.onMessageUpdateFn) {
pluginData.state.savedMessages.events.off("update", pluginData.state.onMessageUpdateFn);
}
pluginData.state.regexRunner.off("repeatedTimeout", pluginData.state.regexRunnerRepeatedTimeoutListener);
if (pluginData.state.regexRunnerRepeatedTimeoutListener) {
pluginData.state.regexRunner.off("repeatedTimeout", pluginData.state.regexRunnerRepeatedTimeoutListener);
}
discardRegExpRunner(`guild-${pluginData.guild.id}`);
},
});