aboutsummaryrefslogtreecommitdiff
path: root/src/lj_gc.c
diff options
context:
space:
mode:
authorMike Pall <mike>2021-06-07 12:03:22 +0200
committerMike Pall <mike>2021-06-07 12:03:22 +0200
commitac02a120ef249aac37b4847705a3099bd4b92967 (patch)
treece8dde84c0cf6017752dd605088dc80f8626ea1a /src/lj_gc.c
parent4216bdfb2a18b213d226da26361417c537c36743 (diff)
downloadluajit-ac02a120ef249aac37b4847705a3099bd4b92967.tar.gz
luajit-ac02a120ef249aac37b4847705a3099bd4b92967.tar.bz2
luajit-ac02a120ef249aac37b4847705a3099bd4b92967.zip
String buffers, part 2e: add serialization string dictionary.
Sponsored by fmad.io.
Diffstat (limited to 'src/lj_gc.c')
-rw-r--r--src/lj_gc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lj_gc.c b/src/lj_gc.c
index 1f382ea0..646a27b2 100644
--- a/src/lj_gc.c
+++ b/src/lj_gc.c
@@ -67,9 +67,10 @@ static void gc_mark(global_State *g, GCobj *o)
67 gc_markobj(g, tabref(gco2ud(o)->env)); 67 gc_markobj(g, tabref(gco2ud(o)->env));
68 if (LJ_HASBUFFER && gco2ud(o)->udtype == UDTYPE_BUFFER) { 68 if (LJ_HASBUFFER && gco2ud(o)->udtype == UDTYPE_BUFFER) {
69 SBufExt *sbx = (SBufExt *)uddata(gco2ud(o)); 69 SBufExt *sbx = (SBufExt *)uddata(gco2ud(o));
70 if (sbufiscow(sbx) && gcref(sbx->cowref) != NULL) { 70 if (sbufiscow(sbx) && gcref(sbx->cowref))
71 gc_markobj(g, gcref(sbx->cowref)); 71 gc_markobj(g, gcref(sbx->cowref));
72 } 72 if (gcref(sbx->dict))
73 gc_markobj(g, gcref(sbx->dict));
73 } 74 }
74 } else if (LJ_UNLIKELY(gct == ~LJ_TUPVAL)) { 75 } else if (LJ_UNLIKELY(gct == ~LJ_TUPVAL)) {
75 GCupval *uv = gco2uv(o); 76 GCupval *uv = gco2uv(o);