From f4df741ec3a43d6e0f5cb2f3b1db42a92acdca03 Mon Sep 17 00:00:00 2001 From: stenlan <14372001+stenlan@users.noreply.github.com> Date: Mon, 13 Apr 2026 23:23:03 +0200 Subject: [PATCH] Update hierarchySiblings to check for null superclasses Handle null superclass cases in hierarchySiblings score calculation. Fixes NPE when loading classes without superclass. --- .../main/java/matcher/model/classifier/ClassClassifier.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/matcher-model/src/main/java/matcher/model/classifier/ClassClassifier.java b/matcher-model/src/main/java/matcher/model/classifier/ClassClassifier.java index a6c558f..3005996 100644 --- a/matcher-model/src/main/java/matcher/model/classifier/ClassClassifier.java +++ b/matcher-model/src/main/java/matcher/model/classifier/ClassClassifier.java @@ -126,7 +126,10 @@ public double getScore(ClassInstance clsA, ClassInstance clsB, ClassEnvironment private static AbstractClassifier hierarchySiblings = new AbstractClassifier("hierarchy siblings") { @Override public double getScore(ClassInstance clsA, ClassInstance clsB, ClassEnvironment env) { - return ClassifierUtil.compareCounts(clsA.getSuperClass().getChildClasses().size(), clsB.getSuperClass().getChildClasses().size()); + return ClassifierUtil.compareCounts( + clsA.getSuperClass() == null ? 0 : clsA.getSuperClass().getChildClasses().size(), + clsB.getSuperClass() == null ? 0 : clsB.getSuperClass().getChildClasses().size() + ); } };