Browse Source

Moving functionality from NDebugger to Process - Debugger.Core compiles again

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1689 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
David Srbecký 20 years ago
parent
commit
963427473f
  1. 10
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Breakpoints/NDebugger-Breakpoints.cs
  2. 4
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/NDebugger.cs
  3. 6
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/Process-StateControl.cs
  4. 1
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Modules/Process-Modules.cs
  5. 2
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Threads/NDebugger-Processes.cs
  6. 4
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Threads/Process.cs
  7. 2
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Evals/Eval.cs
  8. 2
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/ObjectValueClass.cs

10
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Breakpoints/NDebugger-Breakpoints.cs

@ -71,8 +71,10 @@ namespace Debugger
{ {
breakpointCollection.Add(breakpoint); breakpointCollection.Add(breakpoint);
foreach(Module module in this.Modules) { foreach(Process process in this.Processes) {
breakpoint.SetBreakpoint(module); foreach(Module module in process.Modules) {
breakpoint.SetBreakpoint(module);
}
} }
breakpoint.Changed += new EventHandler<BreakpointEventArgs>(OnBreakpointStateChanged); breakpoint.Changed += new EventHandler<BreakpointEventArgs>(OnBreakpointStateChanged);
breakpoint.Hit += new EventHandler<BreakpointEventArgs>(OnBreakpointHit); breakpoint.Hit += new EventHandler<BreakpointEventArgs>(OnBreakpointHit);
@ -117,7 +119,7 @@ namespace Debugger
breakpointCollection.Clear(); breakpointCollection.Clear();
} }
internal void SetBreakpointsInModule(object sender, ModuleEventArgs e) internal void SetBreakpointsInModule(Module module)
{ {
// This is in case that the client modifies the collection as a response to set breakpoint // This is in case that the client modifies the collection as a response to set breakpoint
// NB: If client adds new breakpoint, it will be set directly as a result of his call, not here (because module is already loaded) // NB: If client adds new breakpoint, it will be set directly as a result of his call, not here (because module is already loaded)
@ -125,7 +127,7 @@ namespace Debugger
collection.AddRange(breakpointCollection); collection.AddRange(breakpointCollection);
foreach (Breakpoint b in collection) { foreach (Breakpoint b in collection) {
b.SetBreakpoint(e.Module); b.SetBreakpoint(module);
} }
} }
} }

4
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/NDebugger.cs

@ -52,8 +52,6 @@ namespace Debugger
mta2sta.CallMethod = CallMethod.DirectCall; mta2sta.CallMethod = CallMethod.DirectCall;
} }
this.ModuleLoaded += SetBreakpointsInModule;
Wrappers.ResourceManager.TraceMessagesEnabled = false; Wrappers.ResourceManager.TraceMessagesEnabled = false;
Wrappers.ResourceManager.TraceMessage += delegate (object s, MessageEventArgs e) { Wrappers.ResourceManager.TraceMessage += delegate (object s, MessageEventArgs e) {
TraceMessage(e.Message); TraceMessage(e.Message);
@ -135,7 +133,7 @@ namespace Debugger
protected internal virtual void OnDebuggerTraceMessage(string message) protected internal virtual void OnDebuggerTraceMessage(string message)
{ {
if (DebuggerTraceMessage != null) { if (DebuggerTraceMessage != null) {
DebuggerTraceMessage(this, new MessageEventArgs(this, message)); DebuggerTraceMessage(this, new MessageEventArgs(null, message));
} }
} }

6
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/Process-StateControl.cs

@ -23,8 +23,6 @@ namespace Debugger
DebugeeState debugeeState; DebugeeState debugeeState;
Process selectedProcess;
public event EventHandler<ExceptionEventArgs> ExceptionThrown; public event EventHandler<ExceptionEventArgs> ExceptionThrown;
public event EventHandler<ProcessEventArgs> DebuggingResumed; public event EventHandler<ProcessEventArgs> DebuggingResumed;
public event EventHandler<ProcessEventArgs> DebuggingPaused; public event EventHandler<ProcessEventArgs> DebuggingPaused;
@ -144,7 +142,7 @@ namespace Debugger
/// </summary> /// </summary>
public void WaitForPause() public void WaitForPause()
{ {
if (this.MTA2STA.SoftWait(PausedHandle, noProcessesHandle) == 1) { if (debugger.MTA2STA.SoftWait(PausedHandle, debugger.noProcessesHandle) == 1) {
throw new DebuggerException("Process exited before pausing"); throw new DebuggerException("Process exited before pausing");
} }
} }
@ -154,7 +152,7 @@ namespace Debugger
/// </summary> /// </summary>
public void WaitForPrecessExit() public void WaitForPrecessExit()
{ {
this.MTA2STA.SoftWait(noProcessesHandle); debugger.MTA2STA.SoftWait(debugger.noProcessesHandle);
} }
/// <summary> /// <summary>

1
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Modules/Process-Modules.cs

@ -68,6 +68,7 @@ namespace Debugger
module.OrderOfLoading = lastAssignedModuleOrderOfLoading; module.OrderOfLoading = lastAssignedModuleOrderOfLoading;
lastAssignedModuleOrderOfLoading++; lastAssignedModuleOrderOfLoading++;
moduleCollection.Add(module); moduleCollection.Add(module);
debugger.SetBreakpointsInModule(module);
OnModuleLoaded(module); OnModuleLoaded(module);
} }

2
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Threads/NDebugger-Processes.cs

@ -18,7 +18,7 @@ namespace Debugger
List<Process> processCollection = new List<Process>(); List<Process> processCollection = new List<Process>();
// Is set as long as the process count is zero // Is set as long as the process count is zero
ManualResetEvent noProcessesHandle = new ManualResetEvent(true); internal ManualResetEvent noProcessesHandle = new ManualResetEvent(true);
public event EventHandler<ProcessEventArgs> ProcessStarted; public event EventHandler<ProcessEventArgs> ProcessStarted;
public event EventHandler<ProcessEventArgs> ProcessExited; public event EventHandler<ProcessEventArgs> ProcessExited;

4
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Threads/Process.cs

@ -197,11 +197,9 @@ namespace Debugger
} }
string debuggeeVersion;
public string DebuggeeVersion { public string DebuggeeVersion {
get { get {
return debuggeeVersion; return debugger.DebuggeeVersion;
} }
} }

2
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Evals/Eval.cs

@ -139,7 +139,7 @@ namespace Debugger
{ {
if (Evaluated || State == EvalState.WaitingForRequest) { if (Evaluated || State == EvalState.WaitingForRequest) {
process.ScheduleEval(this); process.ScheduleEval(this);
process.MTA2STA.AsyncCall(delegate { process.StartEvaluation(); }); process.Debugger.MTA2STA.AsyncCall(delegate { process.StartEvaluation(); });
SetState(EvalState.EvaluationScheduled, null, null); SetState(EvalState.EvaluationScheduled, null, null);
} }
} }

2
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/ObjectValueClass.cs

@ -64,7 +64,7 @@ namespace Debugger
public ObjectValueClass(ObjectValue objectValue, ICorDebugClass corClass) public ObjectValueClass(ObjectValue objectValue, ICorDebugClass corClass)
{ {
this.process = objectValue.Debugger; this.process = objectValue.Process;
this.objectValue = objectValue; this.objectValue = objectValue;
this.module = process.GetModule(corClass.Module); this.module = process.GetModule(corClass.Module);
this.corClass = corClass; this.corClass = corClass;

Loading…
Cancel
Save