From 0f84e246b2ac31adeec5abc27d33229aa68b65f3 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Sun, 8 Nov 2020 01:00:18 +0100 Subject: [PATCH] LibDebug: Handle AttributeDataForm::SData (DW_FORM_sdata) This is a LEB128-encoded signed constant. --- Libraries/LibDebug/Dwarf/DIE.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Libraries/LibDebug/Dwarf/DIE.cpp b/Libraries/LibDebug/Dwarf/DIE.cpp index fa25fec3a8..f370a91de5 100644 --- a/Libraries/LibDebug/Dwarf/DIE.cpp +++ b/Libraries/LibDebug/Dwarf/DIE.cpp @@ -103,6 +103,13 @@ DIE::AttributeValue DIE::get_attribute_value(AttributeDataForm form, value.data.as_u32 = address; break; } + case AttributeDataForm::SData: { + ssize_t data; + debug_info_stream.read_LEB128_signed(data); + value.type = AttributeValue::Type::SignedNumber; + value.data.as_i32 = data; + break; + } case AttributeDataForm::SecOffset: { u32 data; debug_info_stream >> data;