public CorDebugFrame(CorDebugChain chain, WireProtocol.Commands.Debugging_Thread_Stack.Reply.Call call, uint depth)
 {
     _chain        = chain;
     _depthnanoCLR = depth;
     _call         = call;
     _IP           = IP_NOT_INITIALIZED;
 }
예제 #2
0
 public void ResumingExecution()
 {
     if (IsSuspended)
     {
         RefreshChain();
     }
     else
     {
         _chain            = null;
         _currentException = null;
     }
 }
예제 #3
0
        int ICorDebugThread.EnumerateChains(out ICorDebugChainEnum ppChains)
        {
            Debug.Assert(!IsVirtualThread);

            ArrayList chains = new ArrayList();

            for (CorDebugThread thread = GetLastCorDebugThread(); thread != null; thread = thread.PreviousThread)
            {
                CorDebugChain chain = thread.Chain;

                if (chain != null)
                {
                    chains.Add(chain);
                }
            }

            ppChains = new CorDebugEnum(chains, typeof(ICorDebugChain), typeof(ICorDebugChainEnum));

            return(COM_HResults.S_OK);
        }
 public CorDebugInternalFrame(CorDebugChain chain, CorDebugInternalFrameType type)
     : base(chain, null, CorDebugFrame.DEPTH_CLR_INVALID)
 {
     _type = type;
 }