From 1aeb230ea8507d62c1fb34d569159f754e4dbec2 Mon Sep 17 00:00:00 2001 From: Zlatin Balevsky Date: Thu, 6 Jun 2019 19:31:10 +0100 Subject: [PATCH] catch exceptions in event dispatch thread --- core/src/main/groovy/com/muwire/core/EventBus.groovy | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/src/main/groovy/com/muwire/core/EventBus.groovy b/core/src/main/groovy/com/muwire/core/EventBus.groovy index d6d0ca4a..72eead07 100644 --- a/core/src/main/groovy/com/muwire/core/EventBus.groovy +++ b/core/src/main/groovy/com/muwire/core/EventBus.groovy @@ -3,6 +3,7 @@ package com.muwire.core import java.util.concurrent.CopyOnWriteArrayList import java.util.concurrent.Executor import java.util.concurrent.Executors +import java.util.logging.Level import com.muwire.core.files.FileSharedEvent @@ -30,7 +31,11 @@ class EventBus { currentHandlers = handlers.getOrDefault(clazz, []) } currentHandlers.each { - it."on${clazz.getSimpleName()}"(e) + try { + it."on${clazz.getSimpleName()}"(e) + } catch (Exception bad) { + log.log(Level.SEVERE, "exception dispatching event",bad) + } } }