From fb2aa99ffefd301fe9597aa7dcde755265aa9cce Mon Sep 17 00:00:00 2001 From: Dmitry Batkovich Date: Tue, 24 Feb 2015 23:20:27 +0300 Subject: [PATCH] dissociate resource bundle action: NPEs avoided --- .../DissociateResourceBundleAction.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/plugins/properties/src/com/intellij/lang/properties/customizeActions/DissociateResourceBundleAction.java b/plugins/properties/src/com/intellij/lang/properties/customizeActions/DissociateResourceBundleAction.java index 25c0be113f69..7c6590634698 100644 --- a/plugins/properties/src/com/intellij/lang/properties/customizeActions/DissociateResourceBundleAction.java +++ b/plugins/properties/src/com/intellij/lang/properties/customizeActions/DissociateResourceBundleAction.java @@ -17,6 +17,7 @@ package com.intellij.lang.properties.customizeActions; import com.intellij.icons.AllIcons; import com.intellij.ide.projectView.ProjectView; +import com.intellij.ide.projectView.impl.AbstractProjectViewPane; import com.intellij.ide.util.treeView.AbstractTreeBuilder; import com.intellij.lang.properties.PropertiesImplUtil; import com.intellij.lang.properties.ResourceBundle; @@ -89,9 +90,15 @@ public class DissociateResourceBundleAction extends AnAction { } ResourceBundleManager.getInstance(project).dissociateResourceBundle(resourceBundle); } - AbstractTreeBuilder treeBuilder = ProjectView.getInstance(project).getCurrentProjectViewPane().getTreeBuilder(); - for (PsiFileSystemItem item : toUpdateInProjectView) { - treeBuilder.queueUpdateFrom(item, false); + AbstractProjectViewPane currentProjectViewPane = ProjectView.getInstance(project).getCurrentProjectViewPane(); + if (currentProjectViewPane == null) { + return; + } + AbstractTreeBuilder treeBuilder = currentProjectViewPane.getTreeBuilder(); + if (treeBuilder != null) { + for (PsiFileSystemItem item : toUpdateInProjectView) { + treeBuilder.queueUpdateFrom(item, false); + } } }