1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 15:38:10 +00:00

LibDebug: Store 64-bit numbers in AttributeValue

This helps us avoid weird truncation issues and fixes a bug on Clang
builds where truncation while reading caused the DIE offsets following
large LEB128 numbers to be incorrect. This removes the need for the
separate `LongUnsignedNumber` type.
This commit is contained in:
Daniel Bertalan 2021-07-27 11:03:24 +02:00 committed by Andreas Kling
parent efd1aea969
commit 7396e4aedc
6 changed files with 32 additions and 31 deletions

View file

@ -75,7 +75,7 @@ void DIE::for_each_child(Function<void(DIE const& child)> callback) const
auto sibling = current_child->get_attribute(Attribute::Sibling);
u32 sibling_offset = 0;
if (sibling.has_value()) {
sibling_offset = sibling.value().data.as_u32;
sibling_offset = sibling.value().data.as_unsigned;
}
if (!sibling.has_value()) {