public override bool IsMatch(Commands.Debugging_Execution_BreakpointDef breakpointDef) { if (breakpointDef.m_flags != BreakpointDef.c_HARD) { return(false); } if (breakpointDef.m_IP != m_breakpointDef.m_IP) { return(false); } if (breakpointDef.m_md != m_breakpointDef.m_md) { return(false); } CorDebugThread thread = m_function.Process.GetThread(breakpointDef.m_pid); CorDebugFrame frame = thread.Chain.ActiveFrame; if (frame.AppDomain != m_function.AppDomain) { return(false); } return(true); }
public override bool ShouldBreak(Commands.Debugging_Execution_BreakpointDef breakpointDef) { if ((breakpointDef.m_flags & BreakpointDef.c_EXCEPTION_CAUGHT) != 0) { //This if statement remains for compatibility with nanoCLR pre exception filtering support. if ((breakpointDef.m_flags & BreakpointDef.c_EXCEPTION_UNWIND) == 0) { return(false); } } return(true); }