summaryrefslogtreecommitdiff
path: root/parser.c
diff options
context:
space:
mode:
Diffstat (limited to 'parser.c')
-rw-r--r--parser.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/parser.c b/parser.c
index caff1b18..a88e8837 100644
--- a/parser.c
+++ b/parser.c
@@ -947,9 +947,10 @@ void cleanup_insn(insn * i)
{
extop *e;
- while (i->eops) {
- e = i->eops;
- i->eops = i->eops->next;
+ while ((e = i->eops)) {
+ i->eops = e->next;
+ if (e->type == EOT_DB_STRING_FREE)
+ nasm_free(e->stringval);
nasm_free(e);
}
}