Skip to content

Commit 1cefeb2

Browse files
committed
Prevent NPE in AbstractApplicationEventMulticaster's non-caching code path
Issue: SPR-12545
1 parent 51367de commit 1cefeb2

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

spring-context/src/main/java/org/springframework/context/event/AbstractApplicationEventMulticaster.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,9 @@ private Collection<ApplicationListener<?>> retrieveApplicationListeners(
199199
}
200200
for (ApplicationListener<?> listener : listeners) {
201201
if (supportsEvent(listener, event.getClass(), sourceType)) {
202-
retriever.applicationListeners.add(listener);
202+
if (retriever != null) {
203+
retriever.applicationListeners.add(listener);
204+
}
203205
allListeners.add(listener);
204206
}
205207
}
@@ -212,7 +214,9 @@ private Collection<ApplicationListener<?>> retrieveApplicationListeners(
212214
ApplicationListener<?> listener =
213215
beanFactory.getBean(listenerBeanName, ApplicationListener.class);
214216
if (!allListeners.contains(listener) && supportsEvent(listener, event.getClass(), sourceType)) {
215-
retriever.applicationListenerBeans.add(listenerBeanName);
217+
if (retriever != null) {
218+
retriever.applicationListenerBeans.add(listenerBeanName);
219+
}
216220
allListeners.add(listener);
217221
}
218222
}

0 commit comments

Comments
 (0)