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(
