From 175e60c7fa63a5fcdb120e845cb011faaca38187 Mon Sep 17 00:00:00 2001 From: anna Date: Wed, 9 Mar 2011 12:39:04 +0100 Subject: [PATCH] console navigation: try to find class with $ in package name (IDEA-66088) --- .../intellij/execution/filters/ExceptionFilter.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/java/execution/openapi/src/com/intellij/execution/filters/ExceptionFilter.java b/java/execution/openapi/src/com/intellij/execution/filters/ExceptionFilter.java index 157402578f4b..0d965a038ed1 100644 --- a/java/execution/openapi/src/com/intellij/execution/filters/ExceptionFilter.java +++ b/java/execution/openapi/src/com/intellij/execution/filters/ExceptionFilter.java @@ -23,6 +23,8 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.roots.ProjectRootManager; import com.intellij.openapi.util.TextRange; import com.intellij.openapi.util.Trinity; +import com.intellij.openapi.util.io.FileUtil; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.JavaPsiFacade; import com.intellij.psi.PsiClass; @@ -105,9 +107,13 @@ public class ExceptionFilter implements Filter, DumbAware { try{ final int lineNumber = Integer.parseInt(lineString); final PsiManager manager = PsiManager.getInstance(myProject); - PsiClass aClass = JavaPsiFacade.getInstance(manager.getProject()).findClass(className, mySearchScope); + final JavaPsiFacade psiFacade = JavaPsiFacade.getInstance(manager.getProject()); + PsiClass aClass = psiFacade.findClass(className, mySearchScope); if (aClass == null) { - aClass = JavaPsiFacade.getInstance(manager.getProject()).findClass(className, GlobalSearchScope.allScope(myProject)); + aClass = psiFacade.findClass(className, GlobalSearchScope.allScope(myProject)); + if (aClass == null) {//try to find class according to all dollars in package name + aClass = psiFacade.findClass(info.first, GlobalSearchScope.allScope(myProject)); + } if (aClass == null) return null; } final PsiFile file = (PsiFile) aClass.getContainingFile().getNavigationElement();