diff --git a/com.microsoft.java.debug.core/pom.xml b/com.microsoft.java.debug.core/pom.xml
index 453c95b2b..7f5d71cb5 100644
--- a/com.microsoft.java.debug.core/pom.xml
+++ b/com.microsoft.java.debug.core/pom.xml
@@ -8,7 +8,7 @@
${base.name} :: Debugger Core
The Java Debug Server is an implementation of Visual Studio Code (VSCode) Debug Protocol. It can be used in Visual Studio Code to debug Java programs.
https://github.com/scalacenter/java-debug
- 0.34.0+2
+ 0.34.0+3-SNAPSHOT
Java Debug Server for Visual Studio Code
UTF-8
diff --git a/com.microsoft.java.debug.core/src/main/java/com/microsoft/java/debug/core/adapter/handler/StepRequestHandler.java b/com.microsoft.java.debug.core/src/main/java/com/microsoft/java/debug/core/adapter/handler/StepRequestHandler.java
index dc200fe38..81747c460 100644
--- a/com.microsoft.java.debug.core/src/main/java/com/microsoft/java/debug/core/adapter/handler/StepRequestHandler.java
+++ b/com.microsoft.java.debug.core/src/main/java/com/microsoft/java/debug/core/adapter/handler/StepRequestHandler.java
@@ -161,17 +161,23 @@ private void handleDebugEvent(DebugEvent debugEvent, IDebugSession debugSession,
threadState.deleteStepRequest(eventRequestManager);
IStepFilterProvider stepFilter = context.getProvider(IStepFilterProvider.class);
try {
- if (threadState.pendingStepType == Command.STEPIN) {
+ if (threadState.pendingStepType == Command.STEPIN || threadState.pendingStepType == Command.STEPOUT) {
int currentStackDepth = thread.frameCount();
Location currentStepLocation = getTopFrame(thread).location();
// If the ending step location is filtered, or same as the original location where the step into operation is originated,
// do another step of the same kind.
if (shouldFilterLocation(threadState.stepLocation, currentStepLocation, stepFilter, context)
- || shouldDoExtraStepInto(threadState.stackDepth, threadState.stepLocation, currentStackDepth, currentStepLocation)) {
- threadState.pendingStepRequest = DebugUtility.createStepIntoRequest(thread,
- context.getStepFilters().allowClasses,
- context.getStepFilters().skipClasses);
+ || shouldDoExtraStep(threadState.stackDepth, threadState.stepLocation, currentStackDepth, currentStepLocation)) {
+ if (threadState.pendingStepType == Command.STEPIN) {
+ threadState.pendingStepRequest = DebugUtility.createStepIntoRequest(thread,
+ context.getStepFilters().allowClasses,
+ context.getStepFilters().skipClasses);
+ } else {
+ threadState.pendingStepRequest = DebugUtility.createStepIntoRequest(thread,
+ context.getStepFilters().allowClasses,
+ context.getStepFilters().skipClasses);
+ }
threadState.pendingStepRequest.enable();
debugEvent.shouldResume = true;
return;
@@ -223,7 +229,7 @@ private boolean shouldFilterLocation(Location originalLocation, Location current
* @throws IncompatibleThreadStateException
* if the thread is not suspended in the target VM.
*/
- private boolean shouldDoExtraStepInto(int originalStackDepth, Location originalLocation, int currentStackDepth, Location currentLocation)
+ private boolean shouldDoExtraStep(int originalStackDepth, Location originalLocation, int currentStackDepth, Location currentLocation)
throws IncompatibleThreadStateException {
if (originalStackDepth != currentStackDepth) {
return false;
diff --git a/com.microsoft.java.debug.plugin/META-INF/MANIFEST.MF b/com.microsoft.java.debug.plugin/META-INF/MANIFEST.MF
index d20e24bf6..b3831ecb3 100644
--- a/com.microsoft.java.debug.plugin/META-INF/MANIFEST.MF
+++ b/com.microsoft.java.debug.plugin/META-INF/MANIFEST.MF
@@ -25,4 +25,4 @@ Bundle-ClassPath: lib/commons-io-2.10.0.jar,
.,
lib/rxjava-2.1.1.jar,
lib/reactive-streams-1.0.0.jar,
- lib/com-microsoft-java-debug-core-0.34.0+2.jar
+ lib/com-microsoft-java-debug-core-0.34.0+3-SNAPSHOT.jar
diff --git a/com.microsoft.java.debug.plugin/pom.xml b/com.microsoft.java.debug.plugin/pom.xml
index f17108f9a..7ac56ed38 100644
--- a/com.microsoft.java.debug.plugin/pom.xml
+++ b/com.microsoft.java.debug.plugin/pom.xml
@@ -45,7 +45,7 @@
ch.epfl.scala
com-microsoft-java-debug-core
- 0.34.0+2
+ 0.34.0+3-SNAPSHOT
diff --git a/pom.xml b/pom.xml
index a0f7c9b9d..e2b2c965b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -168,7 +168,7 @@
JDT.LS
p2
- https://download.eclipse.org/jdtls/snapshots/repository/latest/
+ https://download.eclipse.org/jdtls/snapshots/repository/1.5.0.202110111021/
JBOLL.TOOLS