From 553a690d23dae01822121c7b923295ca03d91706 Mon Sep 17 00:00:00 2001 From: Adam Date: Tue, 1 Jan 2019 10:24:47 -0500 Subject: [PATCH] discord service: prevent event handlers from being gc'd --- .../main/java/net/runelite/client/discord/DiscordService.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runelite-client/src/main/java/net/runelite/client/discord/DiscordService.java b/runelite-client/src/main/java/net/runelite/client/discord/DiscordService.java index be2939fcf9..2b7ebcdb38 100644 --- a/runelite-client/src/main/java/net/runelite/client/discord/DiscordService.java +++ b/runelite-client/src/main/java/net/runelite/client/discord/DiscordService.java @@ -57,6 +57,8 @@ public class DiscordService implements AutoCloseable private ScheduledExecutorService executorService; private DiscordRPC discordRPC; + // Hold a reference to the event handlers to prevent the garbage collector from deleting them + private final DiscordEventHandlers discordEventHandlers = new DiscordEventHandlers(); /** * Initializes the Discord service, sets up the event handlers and starts worker thread that will poll discord @@ -77,7 +79,6 @@ public class DiscordService implements AutoCloseable return; } - final DiscordEventHandlers discordEventHandlers = new DiscordEventHandlers(); discordEventHandlers.ready = this::ready; discordEventHandlers.disconnected = this::disconnected; discordEventHandlers.errored = this::errored;