Self reference detection defensively handles null bean names

Issue: SPR-12018
master
Juergen Hoeller 10 years ago
parent 0ce90f1d16
commit fe05e7e5b3
  1. 12
      spring-beans/src/main/java/org/springframework/beans/factory/support/DefaultListableBeanFactory.java

@ -1244,15 +1244,9 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
* on the original bean. * on the original bean.
*/ */
private boolean isSelfReference(String beanName, String candidateName) { private boolean isSelfReference(String beanName, String candidateName) {
if (beanName.equals(candidateName)) { return (beanName != null && candidateName != null &&
return true; (beanName.equals(candidateName) || (containsBeanDefinition(candidateName) &&
} beanName.equals(getMergedLocalBeanDefinition(candidateName).getFactoryBeanName()))));
if (candidateName != null && containsBeanDefinition(candidateName)) {
if (beanName.equals(getMergedLocalBeanDefinition(candidateName).getFactoryBeanName())) {
return true;
}
}
return false;
} }
/** /**

Loading…
Cancel
Save