mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
EA-47376 - SIOOBE: JavaChangeSignatureDetector.extractSignature
try to avoid import list modifications during signature string computation
This commit is contained in:
+3
-2
@@ -111,8 +111,9 @@ public class JavaChangeSignatureDetector implements LanguageChangeSignatureDetec
|
||||
public String extractSignature(PsiElement element, @NotNull ChangeInfo initialChangeInfo) {
|
||||
final PsiMethod method = PsiTreeUtil.getParentOfType(element, PsiMethod.class, false);
|
||||
if (method != null && isInsideMethodSignature(element, method) && method == initialChangeInfo.getMethod()) {
|
||||
final TextRange signatureRange = getSignatureRange(method);
|
||||
return element.getContainingFile().getText().substring(signatureRange.getStartOffset(), signatureRange.getEndOffset());
|
||||
final PsiCodeBlock body = method.getBody();
|
||||
final TextRange signatureRange = new TextRange(0, body != null ? body.getStartOffsetInParent() : method.getTextLength());
|
||||
return signatureRange.substring(method.getText());
|
||||
} else if (element instanceof PsiIdentifier && element.getParent() instanceof PsiNamedElement) {
|
||||
return element.getText();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user