Protect against NPE when collecting annotations
Update `AnnotationsPropertySource` to ensure that `null` results from `findMergedAnnotation` are not added to the annotation list. Prior to this commit, if `findMergedAnnotation` returned `null` then `AnnotationsPropertySource.collectProperties` would throw an NPE. Although `findMergedAnnotation` should never return `null`, we're best off being defensive so that bugs such as SPR-17495 won't cause problems. Closes gh-15175
This commit is contained in:
parent
60784e631f
commit
79b5dd3ae7
|
|
@ -90,8 +90,11 @@ public class AnnotationsPropertySource extends EnumerablePropertySource<Class<?>
|
|||
if (annotations != null) {
|
||||
for (Annotation annotation : annotations) {
|
||||
if (!AnnotationUtils.isInJavaLangAnnotationPackage(annotation)) {
|
||||
mergedAnnotations
|
||||
.add(findMergedAnnotation(root, annotation.annotationType()));
|
||||
Annotation mergedAnnotation = findMergedAnnotation(root,
|
||||
annotation.annotationType());
|
||||
if (mergedAnnotation != null) {
|
||||
mergedAnnotations.add(mergedAnnotation);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue