diff options
Diffstat (limited to 'src/lj_func.c')
-rw-r--r-- | src/lj_func.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/lj_func.c b/src/lj_func.c index 078ced92..27a8322f 100644 --- a/src/lj_func.c +++ b/src/lj_func.c | |||
@@ -26,8 +26,8 @@ GCproto *lj_func_newproto(lua_State *L) | |||
26 | pt->sizeuv = 0; | 26 | pt->sizeuv = 0; |
27 | pt->flags = 0; | 27 | pt->flags = 0; |
28 | pt->trace = 0; | 28 | pt->trace = 0; |
29 | pt->k.n = NULL; | 29 | setmref(pt->k, NULL); |
30 | pt->bc = NULL; | 30 | setmref(pt->bc, NULL); |
31 | pt->uv = NULL; | 31 | pt->uv = NULL; |
32 | pt->sizebc = 0; | 32 | pt->sizebc = 0; |
33 | pt->sizekgc = 0; | 33 | pt->sizekgc = 0; |
@@ -49,8 +49,8 @@ void LJ_FASTCALL lj_func_freeproto(global_State *g, GCproto *pt) | |||
49 | MSize nkgc = round_nkgc(pt->sizekgc); | 49 | MSize nkgc = round_nkgc(pt->sizekgc); |
50 | MSize sizek = nkgc*(MSize)sizeof(GCRef) + | 50 | MSize sizek = nkgc*(MSize)sizeof(GCRef) + |
51 | pt->sizekn*(MSize)sizeof(lua_Number); | 51 | pt->sizekn*(MSize)sizeof(lua_Number); |
52 | lj_mem_free(g, pt->k.gc - nkgc, sizek); | 52 | lj_mem_free(g, mref(pt->k, GCRef) - nkgc, sizek); |
53 | lj_mem_freevec(g, pt->bc, pt->sizebc, BCIns); | 53 | lj_mem_freevec(g, proto_bc(pt), pt->sizebc, BCIns); |
54 | lj_mem_freevec(g, pt->uv, pt->sizeuv, uint16_t); | 54 | lj_mem_freevec(g, pt->uv, pt->sizeuv, uint16_t); |
55 | lj_mem_freevec(g, pt->lineinfo, pt->sizelineinfo, int32_t); | 55 | lj_mem_freevec(g, pt->lineinfo, pt->sizelineinfo, int32_t); |
56 | lj_mem_freevec(g, pt->varinfo, pt->sizevarinfo, struct VarInfo); | 56 | lj_mem_freevec(g, pt->varinfo, pt->sizevarinfo, struct VarInfo); |