catch everything to prevent interference with workbench rendering

Signed-off-by: Florian Thienel <florian@thienel.org>
diff --git a/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/DoubleBufferedRenderer.java b/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/DoubleBufferedRenderer.java
index 43ef63a..883eaa3 100644
--- a/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/DoubleBufferedRenderer.java
+++ b/org.eclipse.vex.core/src/org/eclipse/vex/core/internal/widget/swt/DoubleBufferedRenderer.java
@@ -86,7 +86,11 @@
 
 		try {
 			for (final IRenderStep step : steps) {
-				step.render(graphics);
+				try {
+					step.render(graphics);
+				} catch (final Throwable t) {
+					t.printStackTrace(); //TODO proper logging
+				}
 			}
 		} finally {
 			graphics.dispose();