lua

A copy of the Lua development repository
Log | Files | Refs | README

commit 55a710545c811f3ccb6aea6232657015f474139f
parent 753f2c1da4f80f78b12a4a7afa9a380067945e47
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Wed, 23 Jul 2014 14:16:25 -0300

detail (extra byte in LUAI_EXTRASPACE to test proper alignment of
a lua_State)

Diffstat:
Mltests.h | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/ltests.h b/ltests.h @@ -1,5 +1,5 @@ /* -** $Id: ltests.h,v 2.35 2014/07/18 13:27:45 roberto Exp roberto $ +** $Id: ltests.h,v 2.36 2014/07/23 16:47:47 roberto Exp roberto $ ** Internal Header for Debugging of the Lua Implementation ** See Copyright Notice in lua.h */ @@ -64,7 +64,8 @@ int lua_checkmemory (lua_State *L); /* test for lock/unlock */ struct L_EXTRA { int lock; int *plock; }; -#define LUAI_EXTRASPACE sizeof(struct L_EXTRA) +/* extra space before a Lua state (+1 to make it unaligned) */ +#define LUAI_EXTRASPACE (sizeof(struct L_EXTRA) + 1) #define getlock(l) (cast(struct L_EXTRA *, l) - 1) #define luai_userstateopen(l) \ (getlock(l)->lock = 0, getlock(l)->plock = &(getlock(l)->lock))