mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
EA-98441 - assert: JavaMethodOverloadSwitchHandler.executeWriteAction
This commit is contained in:
+7
-2
@@ -88,13 +88,18 @@ public class JavaMethodOverloadSwitchHandler extends EditorWriteActionHandler {
|
||||
if (currentIndex < 0) return;
|
||||
|
||||
PsiMethod currentMethod = (PsiMethod)((CandidateInfo)objects[currentIndex]).getElement();
|
||||
int currentMethodParameterCount = currentMethod.getParameterList().getParametersCount();
|
||||
PsiExpression[] enteredExpressions = ((PsiExpressionList)exprList).getExpressions();
|
||||
int enteredCount = enteredExpressions.length;
|
||||
if (currentMethodParameterCount != enteredCount && !(enteredCount == 0 && currentMethodParameterCount == 1)) {
|
||||
// when parameter list has been edited, but popup wasn't updated for some reason
|
||||
return;
|
||||
}
|
||||
|
||||
Map<String, String> enteredParameters = exprList.getUserData(ENTERED_PARAMETERS);
|
||||
if (enteredParameters == null) {
|
||||
exprList.putUserData(ENTERED_PARAMETERS, enteredParameters = new HashMap<>());
|
||||
}
|
||||
PsiExpression[] enteredExpressions = ((PsiExpressionList)exprList).getExpressions();
|
||||
assert enteredExpressions.length == 0 || enteredExpressions.length == currentMethod.getParameterList().getParametersCount();
|
||||
for (int i = 0; i < enteredExpressions.length; i++) {
|
||||
PsiExpression expression = enteredExpressions[i];
|
||||
String value = expression.getText().trim();
|
||||
|
||||
Reference in New Issue
Block a user