IDEA-178332 "Smart step into" does not work for methods inside lambdas - no sources fix

This commit is contained in:
Egor.Ushakov
2017-08-31 19:36:11 +03:00
parent d46ad87285
commit 131a553a35
@@ -1,5 +1,5 @@
/*
* Copyright 2000-2013 JetBrains s.r.o.
* Copyright 2000-2017 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -17,6 +17,7 @@ package com.intellij.debugger.engine;
import com.intellij.debugger.SourcePosition;
import com.intellij.psi.PsiCodeBlock;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiMethod;
import com.intellij.psi.PsiStatement;
import com.intellij.util.Range;
@@ -35,6 +36,10 @@ public class AnonymousClassMethodFilter extends BasicStepMethodFilter implements
super(psiMethod, lines);
SourcePosition firstStatementPosition = null;
SourcePosition lastStatementPosition = null;
PsiElement navigationElement = psiMethod.getNavigationElement();
if (navigationElement instanceof PsiMethod) {
psiMethod = (PsiMethod)navigationElement;
}
final PsiCodeBlock body = psiMethod.getBody();
if (body != null) {
final PsiStatement[] statements = body.getStatements();