aboutsummaryrefslogtreecommitdiff
path: root/lfunc.c
diff options
context:
space:
mode:
Diffstat (limited to 'lfunc.c')
-rw-r--r--lfunc.c21
1 files changed, 5 insertions, 16 deletions
diff --git a/lfunc.c b/lfunc.c
index c84ab973..3f13a89a 100644
--- a/lfunc.c
+++ b/lfunc.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: $ 2** $Id: lfunc.c,v 1.1 1997/09/16 19:25:59 roberto Exp roberto $
3** Lua Funcion auxiliar 3** Lua Funcion auxiliar
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -11,26 +11,15 @@
11#include "lmem.h" 11#include "lmem.h"
12 12
13 13
14TProtoFunc *luaF_root = NULL; 14GCnode luaF_root = {NULL, 0};
15Closure *luaF_rootcl = NULL; 15GCnode luaF_rootcl = {NULL, 0};
16 16
17 17
18static void luaI_insertfunction (TProtoFunc *f)
19{
20 ++luaO_nentities;
21 f->head.next = (GCnode *)luaF_root;
22 luaF_root = f;
23 f->head.marked = 0;
24}
25
26 18
27Closure *luaF_newclosure (int nelems) 19Closure *luaF_newclosure (int nelems)
28{ 20{
29 Closure *c = (Closure *)luaM_malloc(sizeof(Closure)+nelems*sizeof(TObject)); 21 Closure *c = (Closure *)luaM_malloc(sizeof(Closure)+nelems*sizeof(TObject));
30 ++luaO_nentities; 22 luaO_insertlist(&luaF_rootcl, (GCnode *)c);
31 c->head.next = (GCnode *)luaF_rootcl;
32 luaF_rootcl = c;
33 c->head.marked = 0;
34 return c; 23 return c;
35} 24}
36 25
@@ -45,7 +34,7 @@ TProtoFunc *luaF_newproto (void)
45 f->nconsts = 0; 34 f->nconsts = 0;
46 f->nupvalues = 0; 35 f->nupvalues = 0;
47 f->locvars = NULL; 36 f->locvars = NULL;
48 luaI_insertfunction(f); 37 luaO_insertlist(&luaF_root, (GCnode *)f);
49 return f; 38 return f;
50} 39}
51 40