Fall back to disassembly in case typecast fails.
Since some time now, we construct minimal dwarf image debug infos for release images if they contain frame unwind information, in order to allow using that to unwind the stack in as many cases as possible. As such, it's entirely possible that such an image may be asked for statement information regarding a function that isn't in fact compiled with debugging. As such, we need to simply fall back to disassembly rather than failing entirely. Fixes setting breakpoints in such functions (i.e. anything in a release version of libstdc++).
This commit is contained in:
parent
51e2dbe7f2
commit
07842a5be0
@ -705,7 +705,8 @@ DwarfImageDebugInfo::GetStatement(FunctionDebugInfo* _function,
|
||||
= dynamic_cast<DwarfFunctionDebugInfo*>(_function);
|
||||
if (function == NULL) {
|
||||
TRACE_LINES(" -> no dwarf function\n");
|
||||
return B_BAD_VALUE;
|
||||
// fall back to assembly
|
||||
return fArchitecture->GetStatement(function, address, _statement);
|
||||
}
|
||||
|
||||
AutoLocker<BLocker> locker(fLock);
|
||||
|
Loading…
x
Reference in New Issue
Block a user