diff options
Diffstat (limited to 'src/3rdParty/lua/lundump.c')
-rw-r--r-- | src/3rdParty/lua/lundump.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/3rdParty/lua/lundump.c b/src/3rdParty/lua/lundump.c index aba93f8..f1852c3 100644 --- a/src/3rdParty/lua/lundump.c +++ b/src/3rdParty/lua/lundump.c | |||
@@ -122,7 +122,7 @@ static TString *loadStringN (LoadState *S, Proto *p) { | |||
122 | ts = luaS_createlngstrobj(L, size); /* create string */ | 122 | ts = luaS_createlngstrobj(L, size); /* create string */ |
123 | setsvalue2s(L, L->top.p, ts); /* anchor it ('loadVector' can GC) */ | 123 | setsvalue2s(L, L->top.p, ts); /* anchor it ('loadVector' can GC) */ |
124 | luaD_inctop(L); | 124 | luaD_inctop(L); |
125 | loadVector(S, getstr(ts), size); /* load directly in final place */ | 125 | loadVector(S, getlngstr(ts), size); /* load directly in final place */ |
126 | L->top.p--; /* pop string */ | 126 | L->top.p--; /* pop string */ |
127 | } | 127 | } |
128 | luaC_objbarrier(L, p, ts); | 128 | luaC_objbarrier(L, p, ts); |
@@ -248,6 +248,8 @@ static void loadDebug (LoadState *S, Proto *f) { | |||
248 | f->locvars[i].endpc = loadInt(S); | 248 | f->locvars[i].endpc = loadInt(S); |
249 | } | 249 | } |
250 | n = loadInt(S); | 250 | n = loadInt(S); |
251 | if (n != 0) /* does it have debug information? */ | ||
252 | n = f->sizeupvalues; /* must be this many */ | ||
251 | for (i = 0; i < n; i++) | 253 | for (i = 0; i < n; i++) |
252 | f->upvalues[i].name = loadStringN(S, f); | 254 | f->upvalues[i].name = loadStringN(S, f); |
253 | } | 255 | } |