summaryrefslogtreecommitdiffstats
path: root/lua-5.2.3-ephemeronfix.patch
diff options
context:
space:
mode:
authorTom Callaway <spot@fedoraproject.org>2014-12-10 16:50:23 -0500
committerTom Callaway <spot@fedoraproject.org>2014-12-10 16:50:23 -0500
commit80674c8fe9de4b6580198e77c4d54997faff3f16 (patch)
tree93a84f35d3c42dc430183fd86e212269c6de3e55 /lua-5.2.3-ephemeronfix.patch
parentf76e1fe1c779cacba214e421f8d7042b956c447c (diff)
downloadlua-80674c8fe9de4b6580198e77c4d54997faff3f16.tar.gz
lua-80674c8fe9de4b6580198e77c4d54997faff3f16.tar.xz
lua-80674c8fe9de4b6580198e77c4d54997faff3f16.zip
5.2.3
Diffstat (limited to 'lua-5.2.3-ephemeronfix.patch')
-rw-r--r--lua-5.2.3-ephemeronfix.patch12
1 files changed, 12 insertions, 0 deletions
diff --git a/lua-5.2.3-ephemeronfix.patch b/lua-5.2.3-ephemeronfix.patch
new file mode 100644
index 0000000..b9dbd7b
--- /dev/null
+++ b/lua-5.2.3-ephemeronfix.patch
@@ -0,0 +1,12 @@
+diff -up lua-5.2.3/src/lgc.c.ephemeronfix lua-5.2.3/src/lgc.c
+--- lua-5.2.3/src/lgc.c.ephemeronfix 2014-12-10 16:15:14.482402404 -0500
++++ lua-5.2.3/src/lgc.c 2014-12-10 16:15:49.715167635 -0500
+@@ -403,7 +403,7 @@ static int traverseephemeron (global_Sta
+ reallymarkobject(g, gcvalue(gval(n))); /* mark it now */
+ }
+ }
+- if (prop)
++ if (g->gcstate != GCSatomic || prop)
+ linktable(h, &g->ephemeron); /* have to propagate again */
+ else if (hasclears) /* does table have white keys? */
+ linktable(h, &g->allweak); /* may have to clean white keys */