summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar mudkip2023-06-14 10:47:28 -0600
committerGravatar GitHub2023-06-14 17:47:28 +0100
commit6df26f1415e712f566f5ee47ad340d46c202348f (patch)
tree123696ecf4a758b43197ecef1cd340653a34e0e4
parentfix npe in mapping stats when package name is null (#504) (diff)
downloadenigma-6df26f1415e712f566f5ee47ad340d46c202348f.tar.gz
enigma-6df26f1415e712f566f5ee47ad340d46c202348f.tar.xz
enigma-6df26f1415e712f566f5ee47ad340d46c202348f.zip
Fix NullPointerException when checking if a class is a record due to super class being null (#510)
* fix npe when checking if a class is a record * mark superClass as nullable
-rw-r--r--enigma/src/main/java/cuchaz/enigma/translation/representation/entry/ClassDefEntry.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/enigma/src/main/java/cuchaz/enigma/translation/representation/entry/ClassDefEntry.java b/enigma/src/main/java/cuchaz/enigma/translation/representation/entry/ClassDefEntry.java
index cb2faf06..eb3ea42a 100644
--- a/enigma/src/main/java/cuchaz/enigma/translation/representation/entry/ClassDefEntry.java
+++ b/enigma/src/main/java/cuchaz/enigma/translation/representation/entry/ClassDefEntry.java
@@ -28,7 +28,7 @@ import cuchaz.enigma.translation.representation.Signature;
28public class ClassDefEntry extends ClassEntry implements DefEntry<ClassEntry> { 28public class ClassDefEntry extends ClassEntry implements DefEntry<ClassEntry> {
29 private final AccessFlags access; 29 private final AccessFlags access;
30 private final Signature signature; 30 private final Signature signature;
31 private final ClassEntry superClass; 31 private final @Nullable ClassEntry superClass;
32 private final ClassEntry[] interfaces; 32 private final ClassEntry[] interfaces;
33 33
34 public ClassDefEntry(String className, Signature signature, AccessFlags access, @Nullable ClassEntry superClass, ClassEntry[] interfaces) { 34 public ClassDefEntry(String className, Signature signature, AccessFlags access, @Nullable ClassEntry superClass, ClassEntry[] interfaces) {
@@ -75,7 +75,7 @@ public class ClassDefEntry extends ClassEntry implements DefEntry<ClassEntry> {
75 } 75 }
76 76
77 public boolean isRecord() { 77 public boolean isRecord() {
78 return superClass.getName().equals("java/lang/Record"); 78 return superClass != null && superClass.getName().equals("java/lang/Record");
79 } 79 }
80 80
81 @Override 81 @Override