aboutsummaryrefslogtreecommitdiff
path: root/lapi.c
diff options
context:
space:
mode:
Diffstat (limited to 'lapi.c')
-rw-r--r--lapi.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/lapi.c b/lapi.c
index d6d7a8db..8c70bd4c 100644
--- a/lapi.c
+++ b/lapi.c
@@ -1185,15 +1185,15 @@ LUA_API int lua_gc (lua_State *L, int what, ...) {
1185 break; 1185 break;
1186 } 1186 }
1187 case LUA_GCSETPAUSE: { 1187 case LUA_GCSETPAUSE: {
1188 int data = va_arg(argp, int); 1188 unsigned int data = va_arg(argp, unsigned int);
1189 res = getgcparam(g->gcpause); 1189 res = applygcparam(g, gcpause, 100);
1190 setgcparam(g->gcpause, data); 1190 setgcparam(g, gcpause, data);
1191 break; 1191 break;
1192 } 1192 }
1193 case LUA_GCSETSTEPMUL: { 1193 case LUA_GCSETSTEPMUL: {
1194 int data = va_arg(argp, int); 1194 unsigned int data = va_arg(argp, unsigned int);
1195 res = getgcparam(g->gcstepmul); 1195 res = applygcparam(g, gcstepmul, 100);
1196 setgcparam(g->gcstepmul, data); 1196 setgcparam(g, gcstepmul, data);
1197 break; 1197 break;
1198 } 1198 }
1199 case LUA_GCISRUNNING: { 1199 case LUA_GCISRUNNING: {
@@ -1201,25 +1201,25 @@ LUA_API int lua_gc (lua_State *L, int what, ...) {
1201 break; 1201 break;
1202 } 1202 }
1203 case LUA_GCGEN: { 1203 case LUA_GCGEN: {
1204 int minormul = va_arg(argp, int); 1204 unsigned int minormul = va_arg(argp, unsigned int);
1205 int majormul = va_arg(argp, int); 1205 unsigned int majormul = va_arg(argp, unsigned int);
1206 res = (g->gckind == KGC_INC) ? LUA_GCINC : LUA_GCGEN; 1206 res = (g->gckind == KGC_INC) ? LUA_GCINC : LUA_GCGEN;
1207 if (minormul != 0) 1207 if (minormul != 0)
1208 g->genminormul = minormul; 1208 setgcparam(g, genminormul, minormul);
1209 if (majormul != 0) 1209 if (majormul != 0)
1210 setgcparam(g->genmajormul, majormul); 1210 setgcparam(g, genmajormul, majormul);
1211 luaC_changemode(L, KGC_GEN); 1211 luaC_changemode(L, KGC_GEN);
1212 break; 1212 break;
1213 } 1213 }
1214 case LUA_GCINC: { 1214 case LUA_GCINC: {
1215 int pause = va_arg(argp, int); 1215 unsigned int pause = va_arg(argp, unsigned int);
1216 int stepmul = va_arg(argp, int); 1216 unsigned int stepmul = va_arg(argp, unsigned int);
1217 int stepsize = va_arg(argp, int); 1217 unsigned int stepsize = va_arg(argp, unsigned int);
1218 res = (g->gckind == KGC_INC) ? LUA_GCINC : LUA_GCGEN; 1218 res = (g->gckind == KGC_INC) ? LUA_GCINC : LUA_GCGEN;
1219 if (pause != 0) 1219 if (pause != 0)
1220 setgcparam(g->gcpause, pause); 1220 setgcparam(g, gcpause, pause);
1221 if (stepmul != 0) 1221 if (stepmul != 0)
1222 setgcparam(g->gcstepmul, stepmul); 1222 setgcparam(g, gcstepmul, stepmul);
1223 if (stepsize != 0) 1223 if (stepsize != 0)
1224 g->gcstepsize = (stepsize <= log2maxs(l_obj)) ? stepsize 1224 g->gcstepsize = (stepsize <= log2maxs(l_obj)) ? stepsize
1225 : log2maxs(l_obj); 1225 : log2maxs(l_obj);