diff --git a/src/parser_yin.c b/src/parser_yin.c index c218175e4..bad570b8e 100644 --- a/src/parser_yin.c +++ b/src/parser_yin.c @@ -85,14 +85,15 @@ read_yin_subnode(struct ly_ctx *ctx, struct lyxml_elem *node, const char *name) /* there should be child */ if (!node->child || !node->child->name || strcmp(node->child->name, name)) { - LOGWRN("Expected \"%s\" element in \"%s\" element.", name, node->name); + LOGERR(LY_EVALID, "Expected \"%s\" element in \"%s\" element.", name, node->name); + LOGVAL(LYE_INARG, LOGLINE(node), name, node->name); + return NULL; } else if (node->child->content) { len = strlen(node->child->content); return lydict_insert(ctx, node->child->content, len); + } else { + return lydict_insert(ctx, "", 0); } - - LOGVAL(LYE_INARG, LOGLINE(node), name, node->name); - return NULL; } /* logs directly */