From: Mike Pall Date: Mon, 28 Dec 2009 21:15:00 +0000 (+0100) Subject: Fix size calculation for closure structs. X-Git-Tag: v2.0.0-beta3~165 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9c8f42573f138eee095eea9f6100dbb75800b2f6;p=thirdparty%2FLuaJIT.git Fix size calculation for closure structs. --- 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 -------------------------------------------------------- */