protected override void ActionDone(ScriptingContext context) { if (context.Interpreter.HasTarget) context.ActivatePendingBreakpoints (); }
protected override object DoExecute(ScriptingContext context) { Event handle; if (!address.IsNull) { handle = context.Interpreter.Session.InsertBreakpoint ( context.CurrentThread, tgroup, address); context.Print ("Breakpoint {0} at {1}", handle.Index, address); } else if (location != null) { handle = context.Interpreter.Session.InsertBreakpoint ( tgroup, location); context.Print ("Breakpoint {0} at {1}", handle.Index, location.Name); } else { handle = context.Interpreter.Session.InsertBreakpoint ( tgroup, type, Argument); context.Print ("Breakpoint {0} at {1}", handle.Index, Argument); } if (gui) { context.ActivatePendingBreakpoints (); return handle.Index; } if (!context.Interpreter.HasTarget) return handle.Index; try { if (handle.NeedsActivation) handle.Activate (context.Interpreter.CurrentThread); } catch { if (!lazy) throw; } return handle.Index; }