diff options
-rw-r--r-- | src/org/jetbrains/java/decompiler/main/rels/NestedClassProcessor.java | 5 | ||||
-rw-r--r-- | src/org/jetbrains/java/decompiler/modules/decompiler/exps/InvocationExprent.java | 1 |
2 files changed, 5 insertions, 1 deletions
diff --git a/src/org/jetbrains/java/decompiler/main/rels/NestedClassProcessor.java b/src/org/jetbrains/java/decompiler/main/rels/NestedClassProcessor.java index 1882346..6e40fcb 100644 --- a/src/org/jetbrains/java/decompiler/main/rels/NestedClassProcessor.java +++ b/src/org/jetbrains/java/decompiler/main/rels/NestedClassProcessor.java @@ -124,6 +124,9 @@ public class NestedClassProcessor { * But they add the field to the END of the fields list. */ private void gatherEnumSwitchMaps(ClassNode node) { + if (node.wrapper == null) { + return; + } for (ClassNode child : node.nested) { gatherEnumSwitchMaps(child); } @@ -231,7 +234,7 @@ public class NestedClassProcessor { private static void setLambdaVars(ClassNode parent, ClassNode child) { - if (child.lambda_information.is_method_reference) { // method reference, no code and no parameters + if (parent.wrapper == null || child.lambda_information.is_method_reference) { // method reference, no code and no parameters return; } diff --git a/src/org/jetbrains/java/decompiler/modules/decompiler/exps/InvocationExprent.java b/src/org/jetbrains/java/decompiler/modules/decompiler/exps/InvocationExprent.java index 320cc73..d2b717c 100644 --- a/src/org/jetbrains/java/decompiler/modules/decompiler/exps/InvocationExprent.java +++ b/src/org/jetbrains/java/decompiler/modules/decompiler/exps/InvocationExprent.java @@ -124,6 +124,7 @@ public class InvocationExprent extends Exprent { isStatic = true; } else { + if (!lstParameters.isEmpty()) instance = lstParameters .get(0); // FIXME: remove the first parameter completely from the list. It's the object type for a virtual lambda method. } |