From f9eafab354e20219d074fd1f1bbbc6943b572292 Mon Sep 17 00:00:00 2001 From: Simon Barner <barner@fortiss.org> Date: Thu, 2 Sep 2021 09:55:53 +0200 Subject: [PATCH] Avoid NPE for DerivedAnnotations not backed by an EStructuralFeature Issue-Ref: 4138 Issue-Url: #4138 Signed-off-by: Simon Barner <barner@fortiss.org> --- .../org/fortiss/tooling/base/annotation/valueprovider/.ratings | 2 +- .../annotation/valueprovider/EStructuralFeatureDescriptor.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/.ratings b/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/.ratings index a79483b3b..bcf87b5e4 100644 --- a/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/.ratings +++ b/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/.ratings @@ -1,6 +1,6 @@ AnnotationInstSpec.java b4f2ed47a8984e751e04049de5bdb3cad2c0a933 GREEN DerivedAnnotationValueProviderBase.java afedd21d3469127bbb20adb34c191b5c9c980f6c GREEN -EStructuralFeatureDescriptor.java 416e3cd900151e538922539b0b466908a1cf4639 GREEN +EStructuralFeatureDescriptor.java f27e01608d167f4e02bcfe61a8eafa823675fbee YELLOW EStructuralFeatureValueProviderBase.java 287facbbce47c16d892bae82a214f64ceeef2263 GREEN IAnnotationValueProvider.java 08e0e5f66dc97865e9ac03e1ac646af332845e14 GREEN ValueProviderBase.java e4e866840845346ec99a4304048f5327c4890996 GREEN diff --git a/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/EStructuralFeatureDescriptor.java b/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/EStructuralFeatureDescriptor.java index 416e3cd90..f27e01608 100644 --- a/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/EStructuralFeatureDescriptor.java +++ b/org.fortiss.tooling.base/src/org/fortiss/tooling/base/annotation/valueprovider/EStructuralFeatureDescriptor.java @@ -159,7 +159,8 @@ public class EStructuralFeatureDescriptor { */ public EClassifier getEType(IAnnotatedSpecification specification) { try { - return getEStructuralFeature(specification).getEType(); + EStructuralFeature esf = getEStructuralFeature(specification); + return esf != null ? esf.getEType() : null; } catch(Exception e) { return null; } -- GitLab