Skip to content

Commit 7533057

Browse files
authored
warning generated by clang (#238)
1 parent 732526f commit 7533057

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

src/common/clib-package.c

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,7 @@ static inline int install_packages(list_t *list, const char *dir, int verbose) {
345345
list_node_t *node = NULL;
346346
list_iterator_t *iterator = NULL;
347347
int rc = -1;
348+
list_t *freelist = NULL;
348349

349350
if (!list || !dir)
350351
goto cleanup;
@@ -353,7 +354,7 @@ static inline int install_packages(list_t *list, const char *dir, int verbose) {
353354
if (NULL == iterator)
354355
goto cleanup;
355356

356-
list_t *freelist = list_new();
357+
freelist = list_new();
357358

358359
while ((node = list_iterator_next(iterator))) {
359360
clib_package_dependency_t *dep = NULL;
@@ -392,14 +393,17 @@ static inline int install_packages(list_t *list, const char *dir, int verbose) {
392393
cleanup:
393394
if (iterator)
394395
list_iterator_destroy(iterator);
395-
iterator = list_iterator_new(freelist, LIST_HEAD);
396-
while ((node = list_iterator_next(iterator))) {
397-
clib_package_t *pkg = node->val;
398-
if (pkg)
399-
clib_package_free(pkg);
396+
397+
if (freelist) {
398+
iterator = list_iterator_new(freelist, LIST_HEAD);
399+
while ((node = list_iterator_next(iterator))) {
400+
clib_package_t *pkg = node->val;
401+
if (pkg)
402+
clib_package_free(pkg);
403+
}
404+
list_iterator_destroy(iterator);
405+
list_destroy(freelist);
400406
}
401-
list_iterator_destroy(iterator);
402-
list_destroy(freelist);
403407
return rc;
404408
}
405409

0 commit comments

Comments
 (0)