PHP avoid dumb SOE in deeeeeeeeep trees.

This commit is contained in:
Alexey Gopachenko
2012-09-02 09:32:24 +02:00
parent 53002714ab
commit abe476f2c4
@@ -53,8 +53,12 @@ public abstract class ASTDelegatePsiElement extends PsiElementBase {
@Override
public PsiManagerEx getManager() {
final PsiElement parent = getParent();
if (parent == null) throw new PsiInvalidElementAccessException(this);
PsiElement parent;
for (parent = this; parent.getParent() instanceof ASTDelegatePsiElement; parent = parent.getParent()) {
}
parent = parent.getParent();
if (parent == null)
throw new PsiInvalidElementAccessException(this);
return (PsiManagerEx)parent.getManager();
}