dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dotgnu-pnet-commits] pnet ChangeLog engine/debugger.c


From: Radek Polak
Subject: [dotgnu-pnet-commits] pnet ChangeLog engine/debugger.c
Date: Mon, 09 Apr 2007 11:59:54 +0000

CVSROOT:        /sources/dotgnu-pnet
Module name:    pnet
Changes by:     Radek Polak <radekp>    07/04/09 11:59:54

Modified files:
        .              : ChangeLog 
        engine         : debugger.c 

Log message:
        Set method owner for currently debugged function in debugger helper 
class. Always increment local var index.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pnet/ChangeLog?cvsroot=dotgnu-pnet&r1=1.3446&r2=1.3447
http://cvs.savannah.gnu.org/viewcvs/pnet/engine/debugger.c?cvsroot=dotgnu-pnet&r1=1.19&r2=1.20

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/pnet/ChangeLog,v
retrieving revision 1.3446
retrieving revision 1.3447
diff -u -b -r1.3446 -r1.3447
--- ChangeLog   9 Apr 2007 09:10:46 -0000       1.3446
+++ ChangeLog   9 Apr 2007 11:59:54 -0000       1.3447
@@ -1,3 +1,8 @@
+2007-04-09  Radek Polak  <address@hidden>
+
+       * engine/debugger.c: Set method owner for currently debugged function
+       in debugger helper class. Always increment local var index.
+
 2007-04-09  Klaus Treichel  <address@hidden>
 
        * include/il_utils.h, support/intern.c: Change the signature of

Index: engine/debugger.c
===================================================================
RCS file: /sources/dotgnu-pnet/pnet/engine/debugger.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- engine/debugger.c   2 Apr 2007 21:54:23 -0000       1.19
+++ engine/debugger.c   9 Apr 2007 11:59:54 -0000       1.20
@@ -1021,6 +1021,21 @@
 }
 
 /*
+ * Call DebuggerHelper.SetMethodOwner() method.
+ */
+void DebuggerHelper_SetMethodOwner(ILExecThread *thread, ILType *type)
+{
+       ILObject *clrType;
+
+       clrType = _ILGetClrTypeForILType(thread, type);
+
+       ILExecThreadCallNamed(thread, "System.Private.DebuggerHelper",
+                                       "SetMethodOwner", "(oSystem.Type;)V",
+                                       (void *)0, clrType);
+
+}
+
+/*
  * Call DebuggerHelper.ClearLocals() method.
  */
 void DebuggerHelper_ClearLocals(ILExecThread *thread)
@@ -1146,12 +1161,11 @@
                        {
                                name = ILDebugGetVarName(dbgc, 
ILMethod_Token(method), offset,
                                                                                
                                                currentLocal);
-                               if(name == 0)
-                               {
-                                       continue;
-                               }
                        }
+                       if(name || dbgc == 0)
+                       {
                        DebuggerHelper_AddLocal(thread, name, type, 
watch->addr);
+                       }
                        currentLocal++;
                }
                else if(watch->type == IL_LOCAL_WATCH_TYPE_PARAM)
@@ -1172,16 +1186,17 @@
                        DebuggerHelper_AddLocal(thread, "this", type, 
watch->addr);
                        paramDebugIndex++;
                }
-               else
-               {
-                       continue;
-               }
        }
 
        if(dbgc)
        {
                ILDebugDestroy(dbgc);
        }
+
+       /* Update method's owner type */
+       type = ILType_FromClass(ILMethod_Owner(method));
+       DebuggerHelper_SetMethodOwner(thread, type);
+
 #endif
 }
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]