[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dotgnu-pnet-commits] pnetlib ChangeLog runtime/System/Private/Debugg...
From: |
Radek Polak |
Subject: |
[dotgnu-pnet-commits] pnetlib ChangeLog runtime/System/Private/Debugg... |
Date: |
Mon, 09 Apr 2007 11:58:01 +0000 |
CVSROOT: /sources/dotgnu-pnet
Module name: pnetlib
Changes by: Radek Polak <radekp> 07/04/09 11:58:01
Modified files:
. : ChangeLog
runtime/System/Private: DebuggerHelper.cs
Log message:
Watches for static members without need to specify class name, small
fix for static watches
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pnetlib/ChangeLog?cvsroot=dotgnu-pnet&r1=1.2492&r2=1.2493
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Private/DebuggerHelper.cs?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/pnetlib/ChangeLog,v
retrieving revision 1.2492
retrieving revision 1.2493
diff -u -b -r1.2492 -r1.2493
--- ChangeLog 2 Apr 2007 21:57:12 -0000 1.2492
+++ ChangeLog 9 Apr 2007 11:58:01 -0000 1.2493
@@ -1,3 +1,9 @@
+2007-04-09 Radek Polak <address@hidden>
+
+ * runtime/System/Private/DebuggerHelper.cs: Allow watches for static
+ members without need to specify class name. Fix for static member
+ watches.
+
2007-04-03 Radek Polak <address@hidden>
* runtime/System/Private/DebuggerHelper.cs: Implement watching
Index: runtime/System/Private/DebuggerHelper.cs
===================================================================
RCS file:
/sources/dotgnu-pnet/pnetlib/runtime/System/Private/DebuggerHelper.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- runtime/System/Private/DebuggerHelper.cs 2 Apr 2007 21:57:12 -0000
1.4
+++ runtime/System/Private/DebuggerHelper.cs 9 Apr 2007 11:58:01 -0000
1.5
@@ -28,6 +28,7 @@
internal sealed class DebuggerHelper
{
static LocalWatch locals;
+ static Type methodOwner;
static int maxItemsDumpCount = 16;
static Object error;
@@ -101,6 +102,10 @@
value =
GetNonStaticMemberValue(instance, name,
null);
}
+ else
+ {
+ error = value;
// restore last error
+ }
}
// Call indexer if local variable found
@@ -118,10 +123,19 @@
// Check for static member
Type matchingType =
FindType(name);
- // Find matching static
field/method/property
+ // Parse member name or try
current method owner
if(matchingType != null)
{
parser.Read(out name,
out args);
+ }
+ else
+ {
+ matchingType =
methodOwner;
+ }
+
+ // Find matching static
field/method/property
+ if(matchingType != null)
+ {
value =
GetStaticMemberValue(matchingType,
name, args);
}
@@ -224,6 +238,12 @@
return ExpressionNotFoundError();
}
+ // Set type that owns currently debugged method
+ public static void SetMethodOwner(Type type)
+ {
+ methodOwner = type;
+ }
+
// Set current error and return it.
private static String Error(String message)
{