lua

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

commit ddf1f2a0530dc299fe4997c51b86db9710a94408
parent e34d3c06b069e36189c334d8bfbcf5c978e994c5
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Mon, 24 May 2010 16:29:22 -0300

GC should not run when stopped, even in hard tests

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

diff --git a/llimits.h b/llimits.h @@ -1,5 +1,5 @@ /* -** $Id: llimits.h,v 1.79 2010/04/29 17:31:31 roberto Exp roberto $ +** $Id: llimits.h,v 1.80 2010/05/07 18:44:12 roberto Exp roberto $ ** Limits, basic types, and some other `installation-dependent' definitions ** See Copyright Notice in lua.h */ @@ -179,7 +179,8 @@ typedef lu_int32 Instruction; #if !defined(HARDMEMTESTS) #define condchangemem(L) condmovestack(L) #else -#define condchangemem(L) luaC_fullgc(L, 0) +#define condchangemem(L) \ + ((void)(gcstopped(G(L)) || (luaC_fullgc(L, 0), 1))) #endif #endif