Fix NPE when decompiling constructor #654

This commit is contained in:
Maxim Degtyarev
2018-04-27 15:01:55 +03:00
committed by Egor Ushakov
parent 7c8e64da81
commit a74a9d7d25
8 changed files with 212 additions and 4 deletions

View File

@@ -0,0 +1,50 @@
package pkg;
public class TestMissingConstructorCallBad {
private TestMissingConstructorCallBad() {
System.out.println("Nobody will see what we do here!");// 14 15 16
this((Object)null);// 19 20
}// 21
public static void main(String... var0) {
try {
new TestMissingConstructorCallBad();
} catch (Throwable var2) {// 37
;
}
}// 39
}
class 'pkg/TestMissingConstructorCallBad' {
method '<init> ()V' {
0 4
3 4
5 4
9 5
a 5
d 6
}
method 'main ([Ljava/lang/String;)V' {
b 11
c 15
}
}
Lines mapping:
14 <-> 5
15 <-> 5
16 <-> 5
19 <-> 6
20 <-> 6
21 <-> 7
37 <-> 12
39 <-> 16
Not mapped:
18
28
29
30
31
33

View File

@@ -0,0 +1,60 @@
package pkg;
public class TestMissingConstructorCallGood {
private TestMissingConstructorCallGood(Object var1) {
}// 16
private TestMissingConstructorCallGood() {
System.out.println("Nobody will see what we do here!");// 22 23 24
this((Object)null);// 27 28
}// 29
public static void main(String... var0) {
try {
new TestMissingConstructorCallGood();
} catch (Throwable var2) {// 45
;
}
}// 47
}
class 'pkg/TestMissingConstructorCallGood' {
method '<init> (Ljava/lang/Object;)V' {
4 4
}
method '<init> ()V' {
0 7
3 7
5 7
9 8
a 8
d 9
}
method 'main ([Ljava/lang/String;)V' {
b 14
c 18
}
}
Lines mapping:
16 <-> 5
22 <-> 8
23 <-> 8
24 <-> 8
27 <-> 9
28 <-> 9
29 <-> 10
45 <-> 15
47 <-> 19
Not mapped:
14
15
26
36
37
38
39
41