diff --git a/src/coreclr/debug/ee/controller.cpp b/src/coreclr/debug/ee/controller.cpp index 14b14ff97e7b90..d40de63bd9e512 100644 --- a/src/coreclr/debug/ee/controller.cpp +++ b/src/coreclr/debug/ee/controller.cpp @@ -5831,10 +5831,15 @@ static bool IsTailCall(const BYTE * ip, ControllerStackInfo* info, TailCallFunct return false; } - MethodDesc* pTargetMD = - trace.GetTraceType() == TRACE_UNJITTED_METHOD - ? trace.GetMethodDesc() - : g_pEEInterface->GetNativeCodeMethodDesc(trace.GetAddress()); + MethodDesc* pTargetMD = NULL; + if (trace.GetTraceType() == TRACE_UNJITTED_METHOD) + { + pTargetMD = trace.GetMethodDesc(); + } + else if (trace.GetAddress() != (PCODE)NULL) + { + pTargetMD = g_pEEInterface->GetNativeCodeMethodDesc(trace.GetAddress()); + } if (type == TailCallFunctionType::StoreTailCallArgs) {