void DoBreak(ILIntepreter intp, int bpHash, bool isStep) { KeyValuePair <int, StackFrameInfo[]>[] frames = new KeyValuePair <int, StackFrameInfo[]> [AppDomain.Intepreters.Count]; frames[0] = new KeyValuePair <int, StackFrameInfo[]>(intp.GetHashCode(), GetStackFrameInfo(intp)); int idx = 1; foreach (var j in AppDomain.Intepreters) { if (j.Value != intp) { j.Value.ShouldBreak = true; frames[idx++] = new KeyValuePair <int, Debugger.StackFrameInfo[]>(j.Value.GetHashCode(), GetStackFrameInfo(j.Value)); } } if (!isStep) { server.SendSCBreakpointHit(intp.GetHashCode(), bpHash, frames); } else { server.SendSCStepComplete(intp.GetHashCode(), frames); } //Breakpoint hit intp.Break(); }