From 1dd53e9e415556dde146e92b03f26544e8273b7a Mon Sep 17 00:00:00 2001 From: Cary Xu Date: Sat, 27 Aug 2022 23:01:19 +0800 Subject: [PATCH] fix: return data ptr when iterate remove for simple hash --- source/libs/executor/src/tsimplehash.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/libs/executor/src/tsimplehash.c b/source/libs/executor/src/tsimplehash.c index ee60f09afd..8cd376e092 100644 --- a/source/libs/executor/src/tsimplehash.c +++ b/source/libs/executor/src/tsimplehash.c @@ -295,7 +295,11 @@ int32_t tSimpleHashIterateRemove(SSHashObj *pHashObj, const void *key, size_t ke } if (*pIter == (void *)GET_SHASH_NODE_DATA(pNode)) { - *pIter = pPrev; + if (!pPrev) { + *pIter = NULL; + } else { + *pIter = GET_SHASH_NODE_DATA(pPrev); + } } FREE_HASH_NODE(pNode);