IDEA-138578 Debugger spuriously jumps to decompiled method signature
This commit is contained in:
Binary file not shown.
@@ -84,7 +84,7 @@ public class TestClassLambda {
|
||||
System.out.println("hello2" + var1);
|
||||
};// 87
|
||||
System.out.println("hello1" + var1);// 88
|
||||
};// 86
|
||||
};// 86 89
|
||||
}// 90
|
||||
}
|
||||
|
||||
@@ -180,7 +180,9 @@ class 'pkg/TestClassLambda' {
|
||||
|
||||
method 'lambda$testLambda6$4 (IILjava/lang/String;)Z' {
|
||||
2 59
|
||||
5 59
|
||||
9 59
|
||||
d 59
|
||||
15 59
|
||||
}
|
||||
|
||||
|
||||
@@ -40,6 +40,39 @@ public class TestClassLoop {
|
||||
System.out.println("4");// 58
|
||||
}
|
||||
}
|
||||
|
||||
public static int testWhileCombined(String var0) {
|
||||
int var1 = var0.length();// 63
|
||||
int var2 = 0;// 64
|
||||
boolean var3 = false;// 65
|
||||
boolean var4 = false;// 66
|
||||
int var5 = 0;// 67
|
||||
int var7 = 0;// 69
|
||||
|
||||
for(boolean var8 = false; var2 < var1; ++var2) {// 70 73 90
|
||||
char var6 = var0.charAt(var2);// 74
|
||||
if(var6 == 48) {// 75
|
||||
++var7;// 76
|
||||
} else {
|
||||
if(var6 != 46) {// 77
|
||||
break;
|
||||
}
|
||||
|
||||
if(var3) {// 78
|
||||
throw new NumberFormatException("multiple points");// 80
|
||||
}
|
||||
|
||||
var5 = var2;// 82
|
||||
if(var4) {// 83
|
||||
var5 = var2 - 1;// 84
|
||||
}
|
||||
|
||||
var3 = true;// 86
|
||||
}
|
||||
}
|
||||
|
||||
return var5;// 92
|
||||
}
|
||||
}
|
||||
|
||||
class 'pkg/TestClassLoop' {
|
||||
@@ -77,6 +110,41 @@ class 'pkg/TestClassLoop' {
|
||||
3a 39
|
||||
3c 39
|
||||
}
|
||||
|
||||
method 'testWhileCombined (Ljava/lang/String;)I' {
|
||||
1 44
|
||||
4 44
|
||||
5 45
|
||||
6 45
|
||||
7 46
|
||||
8 46
|
||||
9 47
|
||||
a 47
|
||||
c 48
|
||||
d 48
|
||||
f 49
|
||||
10 49
|
||||
12 51
|
||||
13 51
|
||||
17 51
|
||||
1c 52
|
||||
1f 52
|
||||
23 53
|
||||
25 53
|
||||
28 54
|
||||
30 56
|
||||
32 56
|
||||
36 60
|
||||
3d 61
|
||||
42 61
|
||||
44 64
|
||||
48 65
|
||||
4b 66
|
||||
4e 69
|
||||
4f 69
|
||||
50 51
|
||||
58 73
|
||||
}
|
||||
}
|
||||
|
||||
Lines mapping:
|
||||
@@ -91,5 +159,25 @@ Lines mapping:
|
||||
53 <-> 34
|
||||
54 <-> 35
|
||||
58 <-> 40
|
||||
63 <-> 45
|
||||
64 <-> 46
|
||||
65 <-> 47
|
||||
66 <-> 48
|
||||
67 <-> 49
|
||||
69 <-> 50
|
||||
70 <-> 52
|
||||
73 <-> 52
|
||||
74 <-> 53
|
||||
75 <-> 54
|
||||
76 <-> 55
|
||||
77 <-> 57
|
||||
78 <-> 61
|
||||
80 <-> 62
|
||||
82 <-> 65
|
||||
83 <-> 66
|
||||
84 <-> 67
|
||||
86 <-> 70
|
||||
90 <-> 52
|
||||
92 <-> 74
|
||||
Not mapped:
|
||||
39
|
||||
|
||||
@@ -79,6 +79,7 @@ class 'pkg/TestClassTypes' {
|
||||
1 22
|
||||
2 22
|
||||
3 22
|
||||
4 22
|
||||
c 22
|
||||
}
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ public class TestClassVar {
|
||||
|
||||
while(var1 < 10) {// 47
|
||||
int var2;
|
||||
for(var2 = var1; var1 < 10 && var1 == 0; ++var1) {// 49
|
||||
for(var2 = var1; var1 < 10 && var1 == 0; ++var1) {// 49 51
|
||||
;
|
||||
}
|
||||
|
||||
@@ -44,6 +44,7 @@ class 'pkg/TestClassVar' {
|
||||
0 7
|
||||
1 7
|
||||
3 7
|
||||
5 7
|
||||
8 9
|
||||
b 9
|
||||
1f 11
|
||||
@@ -65,8 +66,11 @@ class 'pkg/TestClassVar' {
|
||||
0 25
|
||||
1 25
|
||||
3 27
|
||||
5 27
|
||||
9 29
|
||||
b 29
|
||||
d 29
|
||||
11 29
|
||||
14 29
|
||||
1c 33
|
||||
1f 34
|
||||
|
||||
@@ -36,7 +36,7 @@ public class TestTryCatchFinally {
|
||||
System.out.println("Finally");// 55
|
||||
}
|
||||
|
||||
return -1;// 56
|
||||
return -1;// 56 57
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -58,4 +58,37 @@ public class TestClassLoop {
|
||||
System.out.println("4");
|
||||
}
|
||||
}
|
||||
|
||||
public static int testWhileCombined(String in) {
|
||||
int len = in.length();
|
||||
int i = 0;
|
||||
boolean decSeen = false;
|
||||
boolean signSeen = false;
|
||||
int decPt = 0;
|
||||
char c;
|
||||
int nLeadZero = 0;
|
||||
int nTrailZero= 0;
|
||||
|
||||
skipLeadingZerosLoop:
|
||||
while (i < len) {
|
||||
c = in.charAt(i);
|
||||
if (c == '0') {
|
||||
nLeadZero++;
|
||||
} else if (c == '.') {
|
||||
if (decSeen) {
|
||||
// already saw one ., this is the 2nd.
|
||||
throw new NumberFormatException("multiple points");
|
||||
}
|
||||
decPt = i;
|
||||
if (signSeen) {
|
||||
decPt -= 1;
|
||||
}
|
||||
decSeen = true;
|
||||
} else {
|
||||
break skipLeadingZerosLoop;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
return decPt;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user