Browse Source

Made the debugger console output a bit less verbose

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3215 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
David Srbecký 17 years ago
parent
commit
5278f2a2a3
  1. 8
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Module.cs
  2. 7
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/NDebugger.Options.cs
  3. 6
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/NDebugger.cs
  4. 8
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Expressions/Expression.cs
  5. 10
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Metadata/DebugType.cs
  6. 4
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Metadata/MethodInfo.cs

8
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/Module.cs

@ -223,7 +223,9 @@ namespace Debugger
if (ca.Owner >> 24 == 0x02) { // TypeDef if (ca.Owner >> 24 == 0x02) { // TypeDef
ICorDebugClass2 corClass = corModule.GetClassFromToken(ca.Owner).CastTo<ICorDebugClass2>(); ICorDebugClass2 corClass = corModule.GetClassFromToken(ca.Owner).CastTo<ICorDebugClass2>();
corClass.SetJMCStatus(0 /* false */); corClass.SetJMCStatus(0 /* false */);
this.Process.TraceMessage("Class {0} marked as non-user code", metaData.GetTypeDefProps(ca.Owner).Name); if (this.Debugger.Verbose) {
this.Process.TraceMessage("Class {0} marked as non-user code", metaData.GetTypeDefProps(ca.Owner).Name);
}
} }
if (ca.Owner >> 24 == 0x06) { // MethodDef if (ca.Owner >> 24 == 0x06) { // MethodDef
DisableJustMyCode(ca.Owner); DisableJustMyCode(ca.Owner);
@ -280,7 +282,9 @@ namespace Debugger
ICorDebugFunction2 corFunction = corModule.GetFunctionFromToken(methodProps.Token).CastTo<ICorDebugFunction2>(); ICorDebugFunction2 corFunction = corModule.GetFunctionFromToken(methodProps.Token).CastTo<ICorDebugFunction2>();
corFunction.SetJMCStatus(0 /* false */); corFunction.SetJMCStatus(0 /* false */);
this.Process.TraceMessage("Funciton {0}.{1} marked as non-user code", typeProps.Name, methodProps.Name); if (this.Debugger.Verbose) {
this.Process.TraceMessage("Funciton {0}.{1} marked as non-user code", typeProps.Name, methodProps.Name);
}
} }
bool IsSingleLine(uint methodDef) bool IsSingleLine(uint methodDef)

7
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/NDebugger.Options.cs

@ -15,6 +15,7 @@ namespace Debugger
bool obeyDebuggerAttributes = true; bool obeyDebuggerAttributes = true;
bool skipProperties = true; bool skipProperties = true;
bool skipOnlySingleLineProperties = true; bool skipOnlySingleLineProperties = true;
bool verbose = false;
string[] symbolsSearchPaths; string[] symbolsSearchPaths;
void ResetJustMyCodeInModules() void ResetJustMyCodeInModules()
@ -66,7 +67,6 @@ namespace Debugger
} }
} }
public string[] SymbolsSearchPaths { public string[] SymbolsSearchPaths {
get { return symbolsSearchPaths; } get { return symbolsSearchPaths; }
set { set {
@ -81,5 +81,10 @@ namespace Debugger
} }
} }
} }
public bool Verbose {
get { return verbose; }
set { verbose = value; }
}
} }
} }

6
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Control/NDebugger.cs

@ -52,9 +52,11 @@ namespace Debugger
mta2sta.CallMethod = CallMethod.DirectCall; mta2sta.CallMethod = CallMethod.DirectCall;
} }
Wrappers.ResourceManager.TraceMessagesEnabled = false; Wrappers.ResourceManager.TraceMessagesEnabled = true;
Wrappers.ResourceManager.TraceMessage += delegate (object s, MessageEventArgs e) { Wrappers.ResourceManager.TraceMessage += delegate (object s, MessageEventArgs e) {
TraceMessage(e.Message); if (this.Verbose) {
TraceMessage(e.Message);
}
}; };
} }

8
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Expressions/Expression.cs

@ -72,7 +72,9 @@ namespace Debugger.Expressions
result = GetFromCache(context); result = GetFromCache(context);
if (result != null) { if (result != null) {
context.Process.TraceMessage(string.Format("Cached: {0,-12} ({1})", this.Code, this.GetType().Name)); if (context.Process.Debugger.Verbose) {
context.Process.TraceMessage(string.Format("Cached: {0,-12} ({1})", this.Code, this.GetType().Name));
}
return result; return result;
} }
@ -88,7 +90,9 @@ namespace Debugger.Expressions
DateTime end = Debugger.Util.HighPrecisionTimer.Now; DateTime end = Debugger.Util.HighPrecisionTimer.Now;
expressionCache[this] = result; expressionCache[this] = result;
context.Process.TraceMessage(string.Format("Evaluated: {0,-12} ({1}) ({2} ms)", this.Code, this.GetType().Name, (end - start).TotalMilliseconds)); if (context.Process.Debugger.Verbose) {
context.Process.TraceMessage(string.Format("Evaluated: {0,-12} ({1}) ({2} ms)", this.Code, this.GetType().Name, (end - start).TotalMilliseconds));
}
return result; return result;
} }

10
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Metadata/DebugType.cs

@ -415,7 +415,9 @@ namespace Debugger.MetaData
foreach(DebugType loadedType in typesWithMatchingName) { foreach(DebugType loadedType in typesWithMatchingName) {
if (loadedType.Equals(type)) { if (loadedType.Equals(type)) {
TimeSpan totalTime = Util.HighPrecisionTimer.Now - startTime; TimeSpan totalTime = Util.HighPrecisionTimer.Now - startTime;
//process.TraceMessage("Type " + type.FullName + " was loaded already (" + totalTime.TotalMilliseconds + " ms)"); if (process.Debugger.Verbose) {
process.TraceMessage("Type " + type.FullName + " was loaded already (" + totalTime.TotalMilliseconds + " ms)");
}
return loadedType; // Type was loaded before return loadedType; // Type was loaded before
} }
} }
@ -430,8 +432,10 @@ namespace Debugger.MetaData
TimeSpan totalTime2 = Util.HighPrecisionTimer.Now - startTime; TimeSpan totalTime2 = Util.HighPrecisionTimer.Now - startTime;
string prefix = type.IsInterface ? "interface" : "type"; string prefix = type.IsInterface ? "interface" : "type";
process.TraceMessage("Loaded {0} {1} ({2} ms)", prefix, type.FullName, totalTime2.TotalMilliseconds); process.TraceMessage("Loaded {0} {1} ({2} ms)", prefix, type.FullName, totalTime2.TotalMilliseconds);
foreach(DebugType inter in type.Interfaces) { if (process.Debugger.Verbose) {
process.TraceMessage(" - Implements {0}", inter.FullName); foreach(DebugType inter in type.Interfaces) {
process.TraceMessage(" - Implements {0}", inter.FullName);
}
} }
return type; return type;

4
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Metadata/MethodInfo.cs

@ -168,7 +168,9 @@ namespace Debugger.MetaData
if (member == null) return null; if (member == null) return null;
if (!(member is FieldInfo)) return null; if (!(member is FieldInfo)) return null;
this.Process.TraceMessage(string.Format("Found backing field for {0}: {1}", this.FullName, member.Name)); if (this.Process.Debugger.Verbose) {
this.Process.TraceMessage(string.Format("Found backing field for {0}: {1}", this.FullName, member.Name));
}
return (FieldInfo)member; return (FieldInfo)member;
} }

Loading…
Cancel
Save