Fix undefined behaviour produced by disassembling 6662dcbc615a (#898)
diff --git a/arch/X86/X86Disassembler.c b/arch/X86/X86Disassembler.c
index cd02d94..6c42668 100644
--- a/arch/X86/X86Disassembler.c
+++ b/arch/X86/X86Disassembler.c
@@ -901,7 +901,7 @@
MCInst *instr, uint16_t *size, uint64_t address, void *_info)
{
cs_struct *handle = (cs_struct *)(uintptr_t)ud;
- InternalInstruction insn;
+ InternalInstruction insn = {0};
struct reader_info info;
int ret;
bool result;
@@ -910,8 +910,6 @@
info.size = code_len;
info.offset = address;
- memset(&insn, 0, offsetof(InternalInstruction, reader));
-
if (instr->flat_insn->detail) {
instr->flat_insn->detail->x86.op_count = 0;
instr->flat_insn->detail->x86.sse_cc = X86_SSE_CC_INVALID;