call to following code can return several lines below actual line:
if (SymGetLineFromAddr64(this->m_hProcess, s.AddrPC.Offset, &(csEntry.offsetFromLine), &Line) != FALSE)
but if we try following before above code:
if (SymGetLineFromAddr64(this->m_hProcess, s.AddrPC.Offset - 1, &(csEntry.offsetFromLine), &Line) != FALSE)
We can get actual line of execution in stacktrace.
Only column offset (offsetFromLine) is incorrect, not sure how to fix that one.
call to following code can return several lines below actual line:
if (SymGetLineFromAddr64(this->m_hProcess, s.AddrPC.Offset, &(csEntry.offsetFromLine), &Line) != FALSE)but if we try following before above code:
if (SymGetLineFromAddr64(this->m_hProcess, s.AddrPC.Offset - 1, &(csEntry.offsetFromLine), &Line) != FALSE)We can get actual line of execution in stacktrace.
Only column offset (offsetFromLine) is incorrect, not sure how to fix that one.