浏览代码

GC should not run when stopped, even in hard tests

Roberto Ierusalimschy 15 年之前
父节点
当前提交
ddf1f2a053
共有 1 个文件被更改,包括 3 次插入2 次删除
  1. 3 2
      llimits.h

+ 3 - 2
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