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 | ||