Check if session is closed when running scheduled tasks (#4595)

This commit is contained in:
AJ Ferguson 2024-04-24 01:39:37 -04:00 committed by GitHub
parent c34295829f
commit 16385a4e2b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1171,7 +1171,9 @@ public class GeyserSession implements GeyserConnection, GeyserCommandSource {
public ScheduledFuture<?> scheduleInEventLoop(Runnable runnable, long duration, TimeUnit timeUnit) {
return eventLoop.schedule(() -> {
try {
runnable.run();
if (!closed) {
runnable.run();
}
} catch (Throwable e) {
geyser.getLogger().error("Error thrown in " + this.bedrockUsername() + "'s event loop!", e);
}