return S_OK;
}
-static uint64_t FrameAddr(ICorDebugFrame *pFrame)
+static uint64_t GetFrameAddr(ICorDebugFrame *pFrame)
{
CORDB_ADDRESS startAddr = 0;
CORDB_ADDRESS endAddr = 0;
stackFrame.clrAddr.ilOffset = ilOffset;
stackFrame.clrAddr.nativeOffset = nOffset;
- stackFrame.addr = FrameAddr(pFrame);
+ stackFrame.addr = GetFrameAddr(pFrame);
TypePrinter::GetMethodName(pFrame, stackFrame.name);
return S_OK;
}
-static uint64_t GetFrameAddr(ICorDebugFrame *pFrame)
-{
- CORDB_ADDRESS startAddr = 0;
- CORDB_ADDRESS endAddr = 0;
- pFrame->GetStackRange(&startAddr, &endAddr);
- return startAddr;
-}
-
typedef std::function<HRESULT(FrameType,ICorDebugFrame*,NativeFrame*,ICorDebugFunction*)> WalkFramesCallback;
HRESULT StitchInternalFrames(
{
case FrameUnknown:
stackFrames.emplace_back(threadId, currentFrame, "?");
- stackFrames.back().addr = FrameAddr(pFrame);
+ stackFrames.back().addr = GetFrameAddr(pFrame);
break;
case FrameNative:
stackFrames.emplace_back(threadId, currentFrame, pNative->symbol);
break;
case FrameCLRNative:
stackFrames.emplace_back(threadId, currentFrame, "[Native Frame]");
- stackFrames.back().addr = FrameAddr(pFrame);
+ stackFrames.back().addr = GetFrameAddr(pFrame);
break;
case FrameCLRInternal:
{
name += GetInternalTypeName(frameType);
name += "]";
stackFrames.emplace_back(threadId, currentFrame, name);
- stackFrames.back().addr = FrameAddr(pFrame);
+ stackFrames.back().addr = GetFrameAddr(pFrame);
}
break;
case FrameCLRManaged: