Пример #1
0
 private void GdbStopped(StopReasonEnum stopReason, GDBBreakpoint breakpoint, UInt64 address, Int64 status)
 {
     _lastDebuggerStop = new DebuggerStop(stopReason, breakpoint, address, status);
     _gdbStopEventHandler.Set();
 }
Пример #2
0
        public IBreakpoint SetSoftwareBreakpoint(ulong address, ulong size, string identifier)
        {
            int? breakpointNum = 0;
            ManualResetEvent evt = new ManualResetEvent (false);

            QueueCommand (new SetBreakpointCmd (address,
                delegate(int? num, UInt64 breakpointAddress) {
                breakpointNum = num;
                evt.Set ();
            }, this));

            evt.WaitOne ();

            if (breakpointNum == null)
                return null;

            GDBBreakpoint breakpoint = new GDBBreakpoint(this, breakpointNum.Value, address, identifier,
                  BreakpointRemoveFromList );

            _breakpoints.Add(breakpointNum.Value, breakpoint);

            return breakpoint;
        }