From 9c8f42573f138eee095eea9f6100dbb75800b2f6 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Mon, 28 Dec 2009 22:15:00 +0100 Subject: [PATCH] Fix size calculation for closure structs. --- src/lj_obj.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lj_obj.h b/src/lj_obj.h index cebeda9b..11b953e0 100644 --- a/src/lj_obj.h +++ b/src/lj_obj.h @@ -435,8 +435,8 @@ typedef union GCfunc { #define iscfunc(fn) ((fn)->c.ffid == FF_C) #define isffunc(fn) ((fn)->c.ffid > FF_C) #define funcproto(fn) check_exp(isluafunc(fn), &gcref((fn)->l.pt)->pt) -#define sizeCfunc(n) (sizeof(GCfuncC) + sizeof(TValue)*((n)-1)) -#define sizeLfunc(n) (sizeof(GCfuncL) + sizeof(TValue *)*((n)-1)) +#define sizeCfunc(n) (sizeof(GCfuncC)-sizeof(TValue)+sizeof(TValue)*(n)) +#define sizeLfunc(n) (sizeof(GCfuncL)-sizeof(GCRef)+sizeof(GCRef)*(n)) /* -- Table object -------------------------------------------------------- */