Check for tombstone as very first entry in the line table.

This is a folow up to
https://chromium-review.googlesource.com/c/breakpad/breakpad/+/2317730

and handles the additional case where there are no entries in the line
table at all.

Change-Id: I100c5d0891e7dc7088d58da11240d7df3a6c48d9
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/2321300
Reviewed-by: Mark Mentovai <mark@chromium.org>
This commit is contained in:
Sterling Augustine 2020-07-27 13:54:54 -07:00
parent 7d65240249
commit 28d7cbdd42

View File

@ -1089,6 +1089,11 @@ void DwarfCUToModule::AssignLinesToFunctions() {
return; return;
} }
// Some dwarf producers handle linker-removed functions by using -1 as a
// tombstone in the line table. So the end marker can be -1.
if (current == Module::kMaxAddress)
return;
while (range || line) { while (range || line) {
// This loop has two invariants that hold at the top. // This loop has two invariants that hold at the top.
// //