1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 20:28:11 +00:00

LibX86: Make Instruction::length work for invalid instructions

This commit is contained in:
Simon Wanner 2022-03-25 22:16:36 +01:00 committed by Andreas Kling
parent ab1f28d566
commit c5681e06c6

View file

@ -872,7 +872,7 @@ ALWAYS_INLINE unsigned Instruction::length() const
unsigned len = 1;
if (has_sub_op())
++len;
if (m_descriptor->has_rm) {
if (m_descriptor && m_descriptor->has_rm) {
++len;
if (m_modrm.m_has_sib)
++len;
@ -993,6 +993,7 @@ ALWAYS_INLINE Instruction::Instruction(InstructionStreamType& stream, OperandSiz
warnln("Instruction {:02X} not understood", m_op);
}
m_descriptor = nullptr;
m_extra_bytes = prefix_bytes;
return;
}