aboutsummaryrefslogtreecommitdiff
path: root/lstring.c
diff options
context:
space:
mode:
Diffstat (limited to 'lstring.c')
-rw-r--r--lstring.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lstring.c b/lstring.c
index 281d35fd..b79cdb61 100644
--- a/lstring.c
+++ b/lstring.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lstring.c,v 2.12 2009/04/17 14:40:13 roberto Exp roberto $ 2** $Id: lstring.c,v 2.13 2009/04/29 17:09:41 roberto Exp roberto $
3** String table (keeps all strings handled by Lua) 3** String table (keeps all strings handled by Lua)
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -22,8 +22,8 @@
22void luaS_resize (lua_State *L, int newsize) { 22void luaS_resize (lua_State *L, int newsize) {
23 int i; 23 int i;
24 stringtable *tb = &G(L)->strt; 24 stringtable *tb = &G(L)->strt;
25 if (G(L)->gcstate == GCSsweepstring) 25 /* cannot resize while GC is traversing strings */
26 return; /* cannot resize during GC traverse */ 26 luaC_runtilstate(L, ~GCSsweepstring);
27 if (newsize > tb->size) { 27 if (newsize > tb->size) {
28 luaM_reallocvector(L, tb->hash, tb->size, newsize, GCObject *); 28 luaM_reallocvector(L, tb->hash, tb->size, newsize, GCObject *);
29 for (i = tb->size; i < newsize; i++) tb->hash[i] = NULL; 29 for (i = tb->size; i < newsize; i++) tb->hash[i] = NULL;