runners: Search for HyperlinkListener through the whole exception chain
[idea/community.git] / platform / lang-api / src / com / intellij / execution / runners / ExecutionUtil.java
index 6bb69cfac545766716805cd175364eb5af933ed6..f31feeb120491434b98e7934a18ca6dfaa953f69 100644 (file)
@@ -38,6 +38,7 @@ import com.intellij.openapi.wm.ToolWindowManager;
 import com.intellij.ui.ColorUtil;
 import com.intellij.ui.LayeredIcon;
 import com.intellij.ui.content.Content;
+import com.intellij.util.ExceptionUtil;
 import com.intellij.util.ui.GraphicsUtil;
 import com.intellij.util.ui.JBUI;
 import com.intellij.util.ui.UIUtil;
@@ -110,8 +111,8 @@ public class ExecutionUtil {
       LOG.error(fullMessage, e);
     }
 
-    if (listener == null && e instanceof HyperlinkListener) {
-      listener = (HyperlinkListener)e;
+    if (listener == null) {
+      listener = ExceptionUtil.findCause(e, HyperlinkListener.class);
     }
 
     final HyperlinkListener finalListener = listener;