Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLluis Sanchez <lluis@novell.com>2009-12-03 14:57:51 +0300
committerLluis Sanchez <lluis@novell.com>2009-12-03 14:57:51 +0300
commitfd6460fb1cda38763d88464b881f4a56e68e29c1 (patch)
treedf6b215cbdca09c108ab68b7e925b7bd60545c6a
parentb0dbc9e35c4833080fc400aa3a44bee90f56aff2 (diff)
2009-12-03 Lluis Sanchez Gual <lluis@novell.com>extras/MonoDevelop.Debugger.Mdb/2.2-rc
* MdbObjectValueAdaptor.cs: Track api changes. 2009-12-02 Lluis Sanchez Gual <lluis@novell.com> * FieldReference.cs: * PropertyReference.cs: * MdbObjectValueAdaptor.cs: Implement new members. Properly set the Global flag for static fields and properties. svn path=/branches/monodevelop/extras/MonoDevelop.Debugger.Mdb/2.2/; revision=147550
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog11
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs7
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs13
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs7
4 files changed, 36 insertions, 2 deletions
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog
index 57ff94e5d7..a283fc4c5c 100644
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog
+++ b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog
@@ -1,3 +1,14 @@
+2009-12-03 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MdbObjectValueAdaptor.cs: Track api changes.
+
+2009-12-02 Lluis Sanchez Gual <lluis@novell.com>
+
+ * FieldReference.cs:
+ * PropertyReference.cs:
+ * MdbObjectValueAdaptor.cs: Implement new members. Properly
+ set the Global flag for static fields and properties.
+
2009-11-23 Lluis Sanchez Gual <lluis@novell.com>
* Convert.cs: Improve conversion of corlib types.
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs
index a9651a8b20..e705fdbe93 100644
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs
+++ b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs
@@ -53,6 +53,12 @@ namespace DebuggerServer
}
}
+ public override object DeclaringType {
+ get {
+ return type;
+ }
+ }
+
public override object Value {
get {
MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
@@ -78,6 +84,7 @@ namespace DebuggerServer
get {
ObjectValueFlags flags = ObjectValueFlags.Field | ObjectUtil.GetAccessibility (field.Accessibility);
if (field.HasConstValue) flags |= ObjectValueFlags.ReadOnly;
+ if (field.IsStatic) flags |= ObjectValueFlags.Global;
return flags;
}
}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs
index 9b61f95234..fa2a00a11c 100644
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs
+++ b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs
@@ -273,6 +273,15 @@ namespace DebuggerServer
return mctx.Frame.Language.LookupType (name);
}
+ public override object GetBaseType (EvaluationContext ctx, object t)
+ {
+ MdbEvaluationContext mctx = (MdbEvaluationContext) ctx;
+ TargetStructType type = t as TargetStructType;
+ if (type != null && type.HasParent)
+ return type.GetParentType (mctx.Thread);
+ else
+ return null;
+ }
public override object[] GetTypeArgs (EvaluationContext ctx, object type)
{
@@ -414,7 +423,7 @@ namespace DebuggerServer
return obj.GetType ().GetProperty (name).GetValue (obj, null);
}
- public override IEnumerable<ValueReference> GetMembers (EvaluationContext gctx, object tt, object ob, BindingFlags bindingFlags)
+ protected override IEnumerable<ValueReference> GetMembers (EvaluationContext gctx, object tt, object ob, BindingFlags bindingFlags)
{
MdbEvaluationContext ctx = (MdbEvaluationContext)gctx;
TargetStructObject co = ctx.GetRealObject (ob) as TargetStructObject; // It can be a TargetObjectObject
@@ -944,7 +953,7 @@ namespace DebuggerServer
}
}
- if (type.HasParent)
+ if (type.HasParent && (flags & BindingFlags.DeclaredOnly) == 0)
type = type.GetParentType (ctx.Thread);
else
break;
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs
index d716c9a013..1995ffbba1 100644
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs
+++ b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs
@@ -51,6 +51,12 @@ namespace DebuggerServer
}
}
+ public override object DeclaringType {
+ get {
+ return prop.Getter.DeclaringType;
+ }
+ }
+
public override object Value {
get {
MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
@@ -72,6 +78,7 @@ namespace DebuggerServer
get {
ObjectValueFlags flags = ObjectValueFlags.Property | ObjectUtil.GetAccessibility (prop.Accessibility);
if (!prop.CanWrite) flags |= ObjectValueFlags.ReadOnly;
+ if (prop.IsStatic) flags |= ObjectValueFlags.Global;
return flags;
}
}