Skip to content

Commit 5c4bbd2

Browse files
authored
1.change a common scenario when user input expression without stopped thread (#210)
* 1.change a common scenario when user input expression in debug console when the program is not stopped * 1. format a better code style.
1 parent 7328c67 commit 5c4bbd2

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

check_style.xml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@
136136
<property name="allowNoEmptyLineBetweenFields" value="true"/>
137137
<property name="allowMultipleEmptyLines" value="false"/>
138138
<property name="allowMultipleEmptyLinesInsideClassMembers" value="false"/>
139+
<property name="tokens" value="VARIABLE_DEF, METHOD_DEF"/>
139140
</module>
140141
<module name="SeparatorWrap">
141142
<property name="id" value="SeparatorWrapDot"/>
@@ -276,5 +277,16 @@
276277
<module name="CommentsIndentation"/>
277278
<module name="EmptyStatement"/>
278279
<module name="StringLiteralEquality"/>
280+
<!-- Developer should probably bring up this issue with designer if ever it occurs. -->
281+
<module name="EqualsHashCode">
282+
<property name="severity" value="info" />
283+
</module>
284+
<!-- Only apply this to local variables; Designers seem to prefer using same parameter names as class members. -->
285+
<module name="HiddenField">
286+
<property name="tokens" value="VARIABLE_DEF"/>
287+
</module>
288+
289+
<module name="SimplifyBooleanExpression"/>
290+
<module name="SimplifyBooleanReturn"/>
279291
</module>
280292
</module>

com.microsoft.java.debug.core/src/main/java/com/microsoft/java/debug/core/adapter/handler/CompletionsHandler.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
package com.microsoft.java.debug.core.adapter.handler;
1313

14+
import java.util.ArrayList;
1415
import java.util.Arrays;
1516
import java.util.List;
1617
import java.util.concurrent.CompletableFuture;
@@ -41,6 +42,14 @@ public List<Command> getTargetCommands() {
4142
@Override
4243
public CompletableFuture<Response> handle(Command command, Arguments arguments, Response response, IDebugAdapterContext context) {
4344
CompletionsArguments completionsArgs = (CompletionsArguments) arguments;
45+
46+
// completions should be illegal when frameId is zero, it is sent when the program is running, while during running we cannot resolve
47+
// the completion candidates
48+
if (completionsArgs.frameId == 0) {
49+
response.body = new ArrayList<>();
50+
return CompletableFuture.completedFuture(response);
51+
}
52+
4453
StackFrameReference stackFrameReference = (StackFrameReference) context.getRecyclableIdPool().getObjectById(completionsArgs.frameId);
4554

4655
if (stackFrameReference == null) {

0 commit comments

Comments
 (0)