21f347
diff -up lua-5.3.4/src/lgc.c.bug5 lua-5.3.4/src/lgc.c
21f347
--- lua-5.3.4/src/lgc.c.bug5	2017-10-29 20:30:18.824283152 -0400
21f347
+++ lua-5.3.4/src/lgc.c	2017-10-29 20:31:12.133021523 -0400
21f347
@@ -643,8 +643,9 @@ static void clearkeys (global_State *g,
21f347
     for (n = gnode(h, 0); n < limit; n++) {
21f347
       if (!ttisnil(gval(n)) && (iscleared(g, gkey(n)))) {
21f347
         setnilvalue(gval(n));  /* remove value ... */
21f347
-        removeentry(n);  /* and remove entry from table */
21f347
       }
21f347
+      if (ttisnil(gval(n)))  /* is entry empty? */
21f347
+        removeentry(n);  /* remove entry from table */
21f347
     }
21f347
   }
21f347
 }