/*
            Function breakpoints are a bit special.  In order not to burden the TinyCLR with duplicate function
            breakpoints for each AppDomain. 
        */
        public override bool Equals( CorDebugBreakpointBase breakpoint )
        {
            CorDebugFunctionBreakpoint bp = breakpoint as CorDebugFunctionBreakpoint;

            if(bp == null) return false;

            if(this.m_breakpointDef.m_IP != bp.m_breakpointDef.m_IP) return false;
            if(this.m_breakpointDef.m_md != bp.m_breakpointDef.m_md) return false;

            return true;
        }
示例#2
0
        /*
         *  Function breakpoints are a bit special.  In order not to burden the TinyCLR with duplicate function
         *  breakpoints for each AppDomain.
         */
        public override bool Equals(CorDebugBreakpointBase breakpoint)
        {
            CorDebugFunctionBreakpoint bp = breakpoint as CorDebugFunctionBreakpoint;

            if (bp == null)
            {
                return(false);
            }

            if (this.m_breakpointDef.m_IP != bp.m_breakpointDef.m_IP)
            {
                return(false);
            }
            if (this.m_breakpointDef.m_md != bp.m_breakpointDef.m_md)
            {
                return(false);
            }

            return(true);
        }
 public virtual bool Equals(CorDebugBreakpointBase breakpoint)
 {
     return this.Equals( (object)breakpoint );
 }
 public virtual bool Equals(CorDebugBreakpointBase breakpoint)
 {
     return(this.Equals((object)breakpoint));
 }
		int ICorDebugManagedCallback.Breakpoint (CorDebugAppDomain pAppDomain, CorDebugThread pThread, CorDebugBreakpointBase pBreakpoint)
		{
			TargetEventArgs args = new TargetEventArgs (TargetEventType.TargetStopped);
			args.Process = GetProcess (pAppDomain.Process);
			args.Thread = pAppDomain.Process.GetThread (pThread);
			args.Backtrace = new Backtrace (new CorDebugBacktrace (pThread, this));
			OnTargetEvent (args);
			SetActiveThread (pThread);
			return 0;
		}