diff options
Diffstat (limited to 'byterun/fix_code.c')
-rw-r--r-- | byterun/fix_code.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/byterun/fix_code.c b/byterun/fix_code.c index 42df6333e..4916af8eb 100644 --- a/byterun/fix_code.c +++ b/byterun/fix_code.c @@ -115,10 +115,12 @@ void thread_code (code_t code, asize_t len) for (p = code; p < code + len; /*nothing*/) { opcode_t instr = *p; if (instr < 0 || instr > STOP){ + /* fatal_error_arg ("Fatal error in fix_code: bad opcode (%lx)\n", (char *)(long)instr); + */ + instr = STOP; } - *p++ = (opcode_t)(instr_table[instr] - instr_base); if (instr == SWITCH) { uint32 sizes = *p++; |