Commit 329098a9 authored by Stephen Kelly's avatar Stephen Kelly Committed by Brad King
Browse files

cmMakefile: Set the FilePath on the frame from the cmState.

To verify unit tests pass and for future bisecting.
parent 91158a33
......@@ -276,11 +276,13 @@ void cmMakefile::IssueMessage(cmake::MessageType t,
cmListFileBacktrace cmMakefile::GetBacktrace() const
{
cmListFileBacktrace backtrace(this->StateSnapshot);
cmState::Snapshot snp = this->StateSnapshot;
for(std::vector<cmListFileContext const*>::const_reverse_iterator
i = this->ContextStack.rbegin();
i != this->ContextStack.rend(); ++i)
i != this->ContextStack.rend(); ++i, snp = snp.GetCallStackParent())
{
cmListFileContext frame = *(*i);
frame.FilePath = snp.GetExecutionListFile();
backtrace.Append(frame);
}
return backtrace;
......@@ -292,11 +294,15 @@ cmMakefile::GetBacktrace(cmListFileContext const& lfc) const
{
cmListFileBacktrace backtrace(this->StateSnapshot);
backtrace.Append(lfc);
cmState::Snapshot snp = this->StateSnapshot;
assert(snp.GetExecutionListFile() == lfc.FilePath);
snp = snp.GetCallStackParent();
for(std::vector<cmListFileContext const*>::const_reverse_iterator
i = this->ContextStack.rbegin();
i != this->ContextStack.rend(); ++i)
i != this->ContextStack.rend(); ++i, snp = snp.GetCallStackParent())
{
cmListFileContext frame = *(*i);
frame.FilePath = snp.GetExecutionListFile();
backtrace.Append(frame);
}
return backtrace;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment