summaryrefslogtreecommitdiff
path: root/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java')
-rw-r--r--xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java b/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java
index 88bc70044268..a0529b60a8fc 100644
--- a/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java
+++ b/xml/dom-impl/src/com/intellij/util/xml/impl/DomInvocationHandler.java
@@ -170,7 +170,10 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
@Override
public void run() {
ensureXmlElementExists();
- final DomGenericInfoEx genericInfo = getGenericInfo();
+ final DomInvocationHandler otherInvocationHandler = DomManagerImpl.getDomInvocationHandler(other);
+ assert otherInvocationHandler != null : other;
+
+ final DomGenericInfoEx genericInfo = otherInvocationHandler.getGenericInfo();
for (final AttributeChildDescriptionImpl description : genericInfo.getAttributeChildrenDescriptions()) {
description.getDomAttributeValue(DomInvocationHandler.this).setStringValue(description.getDomAttributeValue(other).getStringValue());
}
@@ -197,7 +200,7 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
}
}
- final String stringValue = DomManagerImpl.getDomInvocationHandler(other).getValue();
+ final String stringValue = otherInvocationHandler.getValue();
if (StringUtil.isNotEmpty(stringValue)) {
setValue(stringValue);
}
@@ -659,12 +662,12 @@ public abstract class DomInvocationHandler<T extends AbstractDomChildDescription
return new AttributeChildInvocationHandler(evaluatedXmlName, description, myManager, strategy, stub);
}
final XmlTag tag = getXmlTag();
-
+
if (tag != null) {
// TODO: this seems ugly
String ns = evaluatedXmlName.getNamespace(tag, getFile());
final XmlAttribute attribute = tag.getAttribute(description.getXmlName().getLocalName(), ns.equals(tag.getNamespace())? null:ns);
-
+
if (attribute != null) {
PsiUtilCore.ensureValid(attribute);
AttributeChildInvocationHandler semElement =