Skip to content

Breakpoint on outer loop won't stop when using Resume (F5) after breaking once #1407

Open
@LeducNic

Description

@LeducNic

When you put a breakpoint on a outer while loop in a method, the debugger break only once instead of for each loop executed. Also, a loop in a if won't work correctly. But if you have an inner loop (loop in a loop), the breakpoint work as expected, so the debugger break after each execution of the inner loop.

Environment
  • Operating System: Windows 10
  • JDK version: 17.0.8
  • Visual Studio Code version: 1.83.1
  • Java extension version: 1.24.0
  • Java Debugger extension version: 0.55.0
Steps To Reproduce

Using this code:
package sandbox;

public class At09Ex05 {
public static void main(String[] args) {
int nb1, nb2, som1, som2;

	som1 = nb1 = 17;
	som2 = nb2 = 7;
	while (som1 != som2) {
		while (som1 < som2) {
			som1 += nb1;
		}
		while (som2 < som1) {
			som2 += nb2;
		}
	}
	System.out.println("Le PPCM de " + nb1 + " et " + nb2 + " est " + som1);
}

}

  1. Place a breakpoint on line : while (som1 != som2) {
  2. Run the debugger and the program stop at the breakpoint
  3. Use Resume (F5)
Current Result

The program run until the end when using F5 on the outer loop

Expected Result

Since the loop should execute a few times, Resume (F5) should stop again at the breakpoint after executing the loop.

Additional Informations

If you do the same test with a brepoint on the while (som1 < som2) { , the behaviour is correct.
If you change while (som1 != som2) { for if (som1 != som2) { then the two inner loops have the problem.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions