From 90e0f0d2beb7cdaf8f68bd2fd4556fc270419e2e Mon Sep 17 00:00:00 2001 From: Sergey Simonchik Date: Thu, 5 Sep 2019 13:54:10 +0300 Subject: [PATCH] do not throw PCE in case of long execution (IDEA-CR-52056) GitOrigin-RevId: c1316b4ee6db4baf5b599c432b74cd2acc607c01 --- .../com/intellij/execution/filters/RegexpFilter.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/platform/lang-api/src/com/intellij/execution/filters/RegexpFilter.java b/platform/lang-api/src/com/intellij/execution/filters/RegexpFilter.java index d690047e60eb..cbc854994c3f 100644 --- a/platform/lang-api/src/com/intellij/execution/filters/RegexpFilter.java +++ b/platform/lang-api/src/com/intellij/execution/filters/RegexpFilter.java @@ -15,6 +15,7 @@ */ package com.intellij.execution.filters; +import com.intellij.openapi.progress.ProcessCanceledException; import com.intellij.openapi.project.DumbAware; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.text.StringUtil; @@ -122,8 +123,14 @@ public class RegexpFilter implements Filter, DumbAware { @Override public Result applyFilter(@NotNull String line, int entireLength) { Matcher matcher = myPattern.matcher(StringUtil.newBombedCharSequence(line, 100)); - if (!matcher.find()) { - return null; + try { + if (!matcher.find()) { + return null; + } + } + catch (ProcessCanceledException e) { + // PCE is caused by long execution. Produce no links in this case. + return null; } String filePath = matcher.group(FILE_STR);