Avoid ResolvableType creation for interface/superclass check

See gh-30713
This commit is contained in:
Juergen Hoeller
2023-06-21 17:17:58 +02:00
parent dc2f513619
commit 1dfe737d0e

View File

@@ -567,7 +567,7 @@ public class ResolvableType implements Serializable {
try {
for (Type genericInterface : resolved.getGenericInterfaces()) {
if (genericInterface instanceof Class<?> clazz) {
if (forClass(clazz).hasGenerics()) {
if (clazz.getTypeParameters().length > 0) {
return true;
}
}
@@ -576,7 +576,10 @@ public class ResolvableType implements Serializable {
catch (TypeNotPresentException ex) {
// Ignore non-present types in generic signature
}
return getSuperType().hasUnresolvableGenerics();
Class<?> superclass = resolved.getSuperclass();
if (superclass != null && superclass != Object.class) {
return getSuperType().hasUnresolvableGenerics();
}
}
return false;
}