From 64d99c1bd553d808ea27b6867a8c4d5d60cb3739 Mon Sep 17 00:00:00 2001 From: hong Date: Tue, 4 Jun 2019 16:07:15 +0800 Subject: [PATCH] =?UTF-8?q?nuse=E8=AE=A1=E6=95=B0=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 3rd/lua/lstring.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/3rd/lua/lstring.c b/3rd/lua/lstring.c index 91db72ea..54515610 100644 --- a/3rd/lua/lstring.c +++ b/3rd/lua/lstring.c @@ -353,10 +353,12 @@ markref(struct ssm_ref *r, TString *s, int changeref) { if (changeref) DEC_SREF(s); return; + } else { + insert_ref(r, s); } - insert_ref(r, hs); + } else { + r->hash[slot] = s; } - r->hash[slot] = s; } void @@ -431,12 +433,12 @@ mergeset(struct ssm_ref *set, struct ssm_ref * rset, int changeref) { for (i=0;ihsize;i++) { TString * s = rset->hash[i]; if (s) { - insert_ref(set, s); + markref(set, s, changeref); } } for (i=0;iasize;i++) { TString * s = rset->array[i]; - insert_ref(set, s); + markref(set, s, changeref); } delete_ref(rset); remove_duplicate(set, changeref);