diff --git a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs index 531f23fa6fa535..80474c6cd33ccc 100644 --- a/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs +++ b/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs @@ -4286,9 +4286,9 @@ private static void RemoveReferencesToListenerInEventSources(EventListener liste // eventSource.m_Dispatchers could have mutated foreach (WeakReference eventSourceRef in s_EventSources) { - if (eventSourceRef.TryGetTarget(out EventSource? eventSource)) + if (eventSourceRef.TryGetTarget(out EventSource? eventSource) + && eventSource.m_Dispatchers != null) { - Debug.Assert(eventSource.m_Dispatchers != null); // Is the first output dispatcher the dispatcher we are removing? if (eventSource.m_Dispatchers.m_Listener == listenerToRemove) {