From: Mike Pall Date: Tue, 5 Nov 2013 18:45:04 +0000 (+0100) Subject: Fix for last commit X-Git-Tag: v2.0.3~31 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8941b1994e1bb2a82cb8221eb5063bfb6e0ef81b;p=thirdparty%2FLuaJIT.git Fix for last commit --- diff --git a/src/lj_api.c b/src/lj_api.c index edb2d620..b5c43bea 100644 --- a/src/lj_api.c +++ b/src/lj_api.c @@ -1164,7 +1164,7 @@ LUA_API int lua_gc(lua_State *L, int what, int data) MSize a = (MSize)data << 10; g->gc.threshold = (a <= g->gc.total) ? (g->gc.total - a) : 0; while (g->gc.total >= g->gc.threshold) - if (lj_gc_step(L)) { + if (lj_gc_step(L) > 0) { res = 1; break; } diff --git a/src/lj_gc.c b/src/lj_gc.c index 7012dbec..2a4d299b 100644 --- a/src/lj_gc.c +++ b/src/lj_gc.c @@ -690,7 +690,7 @@ int LJ_FASTCALL lj_gc_step(lua_State *L) if (g->gc.debt < GCSTEPSIZE) { g->gc.threshold = g->gc.total + GCSTEPSIZE; g->vmstate = ostate; - return 1; + return -1; } else { g->gc.debt -= GCSTEPSIZE; g->gc.threshold = g->gc.total;