Bladeren bron

GC should not run when stopped, even in hard tests

Roberto Ierusalimschy 15 jaren geleden
bovenliggende
commit
ddf1f2a053
1 gewijzigde bestanden met toevoegingen van 3 en 2 verwijderingen
  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