Fix for enum values that could be out of range for their datatype

This commit is contained in:
a2x
2024-04-07 15:35:48 +10:00
parent 7c9d594ca6
commit 9f37324266
69 changed files with 177 additions and 176 deletions

View File

@@ -227,17 +227,10 @@ fn read_enum_binding_members(
let enumerator = binding.enumerators.at(i as _).read(process)?;
let name = enumerator.name.read_string(process)?.to_string();
let value = {
let value = unsafe { enumerator.u.ulong } as i64;
if value == i64::MAX {
-1
} else {
value
}
};
acc.push(EnumMember { name, value });
acc.push(EnumMember {
name,
value: unsafe { enumerator.u.ulong } as i64,
});
Ok(acc)
})