mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
move to subclass to prevent deadlock
This commit is contained in:
+2
-5
@@ -48,10 +48,7 @@ import com.intellij.psi.templateLanguages.OuterLanguageElement;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
import com.intellij.psi.util.PsiTreeUtil;
|
||||
import com.intellij.psi.xml.*;
|
||||
import com.intellij.xml.XmlAttributeDescriptor;
|
||||
import com.intellij.xml.XmlElementDescriptor;
|
||||
import com.intellij.xml.XmlExtension;
|
||||
import com.intellij.xml.XmlUndefinedElementFixProvider;
|
||||
import com.intellij.xml.*;
|
||||
import com.intellij.xml.impl.schema.AnyXmlElementDescriptor;
|
||||
import com.intellij.xml.util.AnchorReference;
|
||||
import com.intellij.xml.util.HtmlUtil;
|
||||
@@ -519,7 +516,7 @@ public class XmlHighlightVisitor extends XmlElementVisitor implements HighlightV
|
||||
final PsiFile containingFile = tag.getContainingFile();
|
||||
final XmlExtension extension = containingFile instanceof XmlFile ?
|
||||
XmlExtension.getExtension(containingFile) :
|
||||
XmlExtension.DEFAULT_EXTENSION;
|
||||
DefaultXmlExtension.DEFAULT_EXTENSION;
|
||||
for (XmlAttribute tagAttribute : attributes) {
|
||||
ProgressManager.checkCanceled();
|
||||
if (attribute != tagAttribute && Comparing.strEqual(attribute.getName(), tagAttribute.getName())) {
|
||||
|
||||
+2
-2
@@ -33,8 +33,8 @@ import com.intellij.psi.xml.XmlAttributeValue;
|
||||
import com.intellij.psi.xml.XmlFile;
|
||||
import com.intellij.psi.xml.XmlTag;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.xml.DefaultXmlExtension;
|
||||
import com.intellij.xml.XmlBundle;
|
||||
import com.intellij.xml.XmlExtension;
|
||||
import com.intellij.xml.util.XmlRefCountHolder;
|
||||
import com.intellij.xml.util.XmlUtil;
|
||||
import org.jetbrains.annotations.Nls;
|
||||
@@ -295,7 +295,7 @@ public class XmlUnusedNamespaceInspection extends XmlSuppressableInspectionTool
|
||||
|
||||
protected void doRemove(Project project, XmlAttribute attribute, XmlTag parent) {
|
||||
if (!attribute.isNamespaceDeclaration()) {
|
||||
SchemaPrefix schemaPrefix = XmlExtension.DEFAULT_EXTENSION.getPrefixDeclaration(parent, myPrefix);
|
||||
SchemaPrefix schemaPrefix = DefaultXmlExtension.DEFAULT_EXTENSION.getPrefixDeclaration(parent, myPrefix);
|
||||
if (schemaPrefix != null) {
|
||||
attribute = schemaPrefix.getDeclaration();
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ import java.util.*;
|
||||
* @author Dmitry Avdeev
|
||||
*/
|
||||
public class DefaultXmlExtension extends XmlExtension {
|
||||
public static final XmlExtension DEFAULT_EXTENSION = new DefaultXmlExtension();
|
||||
|
||||
@Override
|
||||
public boolean isAvailable(final PsiFile file) {
|
||||
|
||||
@@ -44,8 +44,6 @@ import java.util.List;
|
||||
public abstract class XmlExtension {
|
||||
public static final ExtensionPointName<XmlExtension> EP_NAME = new ExtensionPointName<XmlExtension>("com.intellij.xml.xmlExtension");
|
||||
|
||||
public static final XmlExtension DEFAULT_EXTENSION = new DefaultXmlExtension();
|
||||
|
||||
public static XmlExtension getExtension(@NotNull final PsiFile file) {
|
||||
return CachedValuesManager.getCachedValue(file, () -> CachedValueProvider.Result.create(calcExtension(file), PsiModificationTracker.MODIFICATION_COUNT));
|
||||
}
|
||||
@@ -56,7 +54,7 @@ public abstract class XmlExtension {
|
||||
return extension;
|
||||
}
|
||||
}
|
||||
return DEFAULT_EXTENSION;
|
||||
return DefaultXmlExtension.DEFAULT_EXTENSION;
|
||||
}
|
||||
|
||||
@SuppressWarnings("ConstantConditions")
|
||||
|
||||
Reference in New Issue
Block a user