FELIX-3053 : Potential deadlock if event handler throws Throwable and is bypassing timeout handling

git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1150645 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/eventadmin/impl/src/main/java/org/apache/felix/eventadmin/impl/tasks/HandlerTaskImpl.java b/eventadmin/impl/src/main/java/org/apache/felix/eventadmin/impl/tasks/HandlerTaskImpl.java
index 16b975f..d757447 100644
--- a/eventadmin/impl/src/main/java/org/apache/felix/eventadmin/impl/tasks/HandlerTaskImpl.java
+++ b/eventadmin/impl/src/main/java/org/apache/felix/eventadmin/impl/tasks/HandlerTaskImpl.java
@@ -64,11 +64,15 @@
     /**
      * @see org.apache.felix.eventadmin.impl.tasks.HandlerTask#getHandlerClassName()
      */
-    public String getHandlerClassName() {
+    public String getHandlerClassName()
+    {
         final EventHandler handler = m_handlerTasks.getEventHandler(m_eventHandlerRef);
-        try {
+        try
+        {
             return handler.getClass().getName();
-        } finally {
+        }
+        finally
+        {
             m_handlerTasks.ungetEventHandler(handler, m_eventHandlerRef);
         }
     }
@@ -85,7 +89,7 @@
         try
         {
             handler.handleEvent(m_event);
-        } catch (Exception e)
+        } catch (Throwable e)
         {
             // The spec says that we must catch exceptions and log them:
             LogWrapper.getLogger().log(