From 72a2f7c5366423362937f16b64ed4366531bf5b3 Mon Sep 17 00:00:00 2001 From: Olesya Smirnova Date: Mon, 31 Jan 2005 21:19:04 +0300 Subject: [PATCH] NPE fixed --- .../intellij/ide/impl/StructureViewSelectInTarget.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source/com/intellij/ide/impl/StructureViewSelectInTarget.java b/source/com/intellij/ide/impl/StructureViewSelectInTarget.java index fb8588f649cb..ec68f498df02 100644 --- a/source/com/intellij/ide/impl/StructureViewSelectInTarget.java +++ b/source/com/intellij/ide/impl/StructureViewSelectInTarget.java @@ -9,6 +9,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.openapi.wm.ToolWindowId; import com.intellij.openapi.wm.ToolWindowManager; +import com.intellij.openapi.util.Comparing; import com.intellij.psi.*; import com.intellij.psi.xml.XmlFile; @@ -29,10 +30,15 @@ public class StructureViewSelectInTarget implements SelectInTarget { */ public boolean canSelect(PsiFile file) { StructureView structureView = getStructureView(); - if (file == null || structureView == null || !FileEditorManager.getInstance(myProject).getSelectedEditor(file.getVirtualFile()).equals(structureView.getFileEditor())) { + if (file == null) { return false; + } else if (structureView == null) { + return false; + } else if (!Comparing.equal(FileEditorManager.getInstance(myProject).getSelectedEditor(file.getVirtualFile()), structureView.getFileEditor())) { + return false; + } else { + return (file instanceof PsiJavaFile || file instanceof XmlFile) && file.isValid(); } - return (file instanceof PsiJavaFile || file instanceof XmlFile) && file.isValid(); } public void select(PsiElement element, final boolean requestFocus) {