Skip to content

Commit 08871a6

Browse files
committed
tree data BUGFIX missing mutex unlock
1 parent f8974e9 commit 08871a6

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

src/tree_data.c

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3769,14 +3769,13 @@ lyd_get_or_create_leafref_links_record(const struct lyd_node_term *node, struct
37693769
pthread_mutex_lock(&ctx_data->leafref_links_lock);
37703770

37713771
ret = lyht_find(ctx_data->leafref_links_ht, &rec_p, hash, (void **)&rec_p2);
3772-
if (ret == LY_ENOTFOUND) {
3773-
if (create) {
3774-
rec_p = calloc(1, sizeof rec);
3775-
rec_p->node = node;
3776-
LY_CHECK_ERR_RET(!rec_p, LOGMEM(LYD_CTX(node)), LY_EMEM);
3777-
ret = lyht_insert_no_check(ctx_data->leafref_links_ht, &rec_p, hash, (void **)&rec_p2);
3778-
LY_CHECK_ERR_GOTO(ret, free(rec_p), cleanup);
3779-
}
3772+
if ((ret == LY_ENOTFOUND) && create) {
3773+
/* create a new record */
3774+
rec_p = calloc(1, sizeof rec);
3775+
rec_p->node = node;
3776+
LY_CHECK_ERR_GOTO(!rec_p, LOGMEM(LYD_CTX(node)), cleanup);
3777+
ret = lyht_insert_no_check(ctx_data->leafref_links_ht, &rec_p, hash, (void **)&rec_p2);
3778+
LY_CHECK_ERR_GOTO(ret, free(rec_p), cleanup);
37803779
}
37813780

37823781
cleanup:

0 commit comments

Comments
 (0)