From b768f2177e1aae1aa00ee59c3e09832c4316500d Mon Sep 17 00:00:00 2001 From: Dmitry Batkovich Date: Wed, 10 Sep 2014 13:05:48 +0400 Subject: [PATCH] PropertiesImplUtil: PsiDirectory#getFiles() inside read action --- .../intellij/lang/properties/PropertiesImplUtil.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/plugins/properties/properties-psi-impl/src/com/intellij/lang/properties/PropertiesImplUtil.java b/plugins/properties/properties-psi-impl/src/com/intellij/lang/properties/PropertiesImplUtil.java index 15e73791f8ea..502d9b4dc499 100644 --- a/plugins/properties/properties-psi-impl/src/com/intellij/lang/properties/PropertiesImplUtil.java +++ b/plugins/properties/properties-psi-impl/src/com/intellij/lang/properties/PropertiesImplUtil.java @@ -15,7 +15,6 @@ */ package com.intellij.lang.properties; -import com.intellij.lang.HtmlScriptContentProvider; import com.intellij.lang.properties.psi.PropertiesFile; import com.intellij.lang.properties.psi.PropertyKeyIndex; import com.intellij.lang.properties.xml.XmlPropertiesFileImpl; @@ -79,7 +78,13 @@ public class PropertiesImplUtil extends PropertiesUtil { private static ResourceBundle getResourceBundle(@NotNull final String baseName, @NotNull final PsiDirectory baseDirectory) { PropertiesFile defaultPropertiesFile = null; final ResourceBundleManager bundleBaseNameManager = ResourceBundleManager.getInstance(baseDirectory.getProject()); - for (final PsiFile psiFile : baseDirectory.getFiles()) { + final PsiFile[] psiFiles = ApplicationManager.getApplication().runReadAction(new Computable() { + @Override + public PsiFile[] compute() { + return baseDirectory.getFiles(); + } + }); + for (final PsiFile psiFile : psiFiles) { if (baseName.equals(bundleBaseNameManager.getBaseName(psiFile))) { final PropertiesFile propertiesFile = getPropertiesFile(psiFile); if (propertiesFile != null) { @@ -147,4 +152,4 @@ public class PropertiesImplUtil extends PropertiesUtil { } return getResourceBundle(baseName, baseDirectory); } -} +} \ No newline at end of file