From c529dd83a4982b7e0272020a5a4d6e137ba8f007 Mon Sep 17 00:00:00 2001 From: David Schleef Date: Tue, 31 May 2011 19:36:57 -0700 Subject: [PATCH] x86insn: clear allocated memory --- orc/orcx86insn.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/orc/orcx86insn.c b/orc/orcx86insn.c index 9611f99..e8ca66c 100644 --- a/orc/orcx86insn.c +++ b/orc/orcx86insn.c @@ -7,6 +7,7 @@ #include #include #include +#include static const OrcSysOpcode orc_x86_opcodes[] = { @@ -788,14 +789,17 @@ orc_x86_insn_output_immediate (OrcCompiler *p, OrcX86Insn *xinsn) OrcX86Insn * orc_x86_get_output_insn (OrcCompiler *p) { + OrcX86Insn *xinsn; if (p->n_output_insns >= p->n_output_insns_alloc) { p->n_output_insns_alloc += 10; p->output_insns = realloc (p->output_insns, sizeof(OrcX86Insn) * p->n_output_insns_alloc); } + xinsn = ((OrcX86Insn *)p->output_insns) + p->n_output_insns; + memset (xinsn, 0, sizeof(OrcX86Insn)); p->n_output_insns++; - return ((OrcX86Insn *)p->output_insns) + (p->n_output_insns - 1); + return xinsn; } void -- 2.7.4