private HandlerAction DoAssemblyUnloadEvent(AssemblyUnloadEvent e) { NSApplication.sharedApplication().BeginInvoke(() => m_debugger.OnAssemblyUnload(e)); return HandlerAction.Resume; }
private void OnAssemblyUnload(AssemblyUnloadEvent e) { _loadedAssemblies.Remove(e.Assembly); var wasEnabled = _methodEntryRequest.Enabled; _methodEntryRequest.Disable(); _methodEntryRequest.AssemblyFilter = _loadedAssemblies; if (wasEnabled) _methodEntryRequest.Enable(); _breakpointEventRequests = _breakpointEventRequests.Where(kvp => kvp.Key.Method.DeclaringType.Assembly != e.Assembly).ToDictionary(kvp=>kvp.Key,kvp=>kvp.Value); Trace("AssemblyUnload: {0}", e.Assembly.GetName().FullName); AssemblyUnloaded(DebugAssemblyFor(e.Assembly)); }
internal void OnAssemblyUnload(AssemblyUnloadEvent e) { if (DebuggerWindows.WriteEvents) m_transcript.WriteLine(Output.Normal, "Unloaded assembly '{0}'", e.Assembly.GetName().Name); Broadcaster.Invoke("debugger unloaded assembly", e.Assembly); }