diff options
-rw-r--r-- | ldebug.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: ldebug.c,v 1.85 2001/06/28 14:57:17 roberto Exp roberto $ | 2 | ** $Id: ldebug.c,v 1.86 2001/06/28 19:58:57 roberto Exp roberto $ |
3 | ** Debug Interface | 3 | ** Debug Interface |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -354,11 +354,11 @@ static Instruction luaG_symbexec (const Proto *pt, int lastpc, int reg) { | |||
354 | case iABC: { | 354 | case iABC: { |
355 | b = GETARG_B(i); | 355 | b = GETARG_B(i); |
356 | c = GETARG_C(i); | 356 | c = GETARG_C(i); |
357 | if (testOpMode(op, OpModeBreg)) { | 357 | if (testOpMode(op, OpModeBreg)) |
358 | checkreg(pt, b); | 358 | checkreg(pt, b); |
359 | if (testOpMode(op, OpModeCreg)) | ||
359 | check(c < pt->maxstacksize || | 360 | check(c < pt->maxstacksize || |
360 | (c >= MAXSTACK && c-MAXSTACK < pt->sizek)); | 361 | (c >= MAXSTACK && c-MAXSTACK < pt->sizek)); |
361 | } | ||
362 | break; | 362 | break; |
363 | } | 363 | } |
364 | case iABc: { | 364 | case iABc: { |
@@ -397,7 +397,8 @@ static Instruction luaG_symbexec (const Proto *pt, int lastpc, int reg) { | |||
397 | break; | 397 | break; |
398 | } | 398 | } |
399 | case OP_CONCAT: { | 399 | case OP_CONCAT: { |
400 | check(b < c); /* at least two operands */ | 400 | /* `c' is a register, and at least two operands */ |
401 | check(c < MAXSTACK && b < c); | ||
401 | break; | 402 | break; |
402 | } | 403 | } |
403 | case OP_JMP: | 404 | case OP_JMP: |