From 10a1be900f1e503a002162b9afaf31ab4473c975 Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Tue, 23 Jun 2020 11:36:43 +0800 Subject: [PATCH] [td-225] opt destroy function of skiplist --- src/util/src/tskiplist.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/util/src/tskiplist.c b/src/util/src/tskiplist.c index 3a474fe6c1..2394adc6f3 100644 --- a/src/util/src/tskiplist.c +++ b/src/util/src/tskiplist.c @@ -194,13 +194,12 @@ void *tSkipListDestroy(SSkipList *pSkipList) { pthread_rwlock_wrlock(pSkipList->lock); } - SSkipListNode *pNode = SL_GET_FORWARD_POINTER(pSkipList->pHead, 0); + if (pSkipList->keyInfo.freeNode) { + SSkipListNode *pNode = SL_GET_FORWARD_POINTER(pSkipList->pHead, 0); - while (pNode != pSkipList->pTail) { - SSkipListNode *pTemp = pNode; - pNode = SL_GET_FORWARD_POINTER(pNode, 0); - - if (pSkipList->keyInfo.freeNode) { + while (pNode != pSkipList->pTail) { + SSkipListNode *pTemp = pNode; + pNode = SL_GET_FORWARD_POINTER(pNode, 0); tfree(pTemp); } } -- GitLab