diff options
Diffstat (limited to 'lvm.c')
| -rw-r--r-- | lvm.c | 13 |
1 files changed, 7 insertions, 6 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lvm.c,v 1.25 1998/03/09 21:49:52 roberto Exp roberto $ | 2 | ** $Id: lvm.c,v 1.26 1998/03/11 13:59:50 roberto Exp roberto $ |
| 3 | ** Lua virtual machine | 3 | ** Lua virtual machine |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -680,13 +680,14 @@ StkId luaV_execute (Closure *cl, TProtoFunc *tf, StkId base) | |||
| 680 | if (ttype(--S->top) == LUA_T_NIL) pc -= aux; | 680 | if (ttype(--S->top) == LUA_T_NIL) pc -= aux; |
| 681 | break; | 681 | break; |
| 682 | 682 | ||
| 683 | case CLOSURE: | 683 | case CLOSUREW: |
| 684 | aux = *pc++; goto closure; | 684 | aux = next_word(pc); goto closure; |
| 685 | 685 | ||
| 686 | case CLOSURE0: case CLOSURE1: | 686 | case CLOSURE: |
| 687 | aux -= CLOSURE0; | 687 | aux = *pc++; |
| 688 | closure: | 688 | closure: |
| 689 | luaV_closure(aux); | 689 | *S->top++ = consts[aux]; |
| 690 | luaV_closure(*pc++); | ||
| 690 | luaC_checkGC(); | 691 | luaC_checkGC(); |
| 691 | break; | 692 | break; |
| 692 | 693 | ||
