xpath CHANGE refactor lyxp_expr_parse() to return LY_ERR
To correctly inherit LY_ERR value and detect errors, it is necessary to
refactor lyxp_expr_parse() to return LY_ERR value and return the
processed expression via an output parameter.
diff --git a/src/context.c b/src/context.c
index 876240c..08ae49f 100644
--- a/src/context.c
+++ b/src/context.c
@@ -546,8 +546,8 @@
}
/* parse */
- exp = lyxp_expr_parse(ctx, data_path, strlen(data_path), 0);
- LY_CHECK_GOTO(!exp, cleanup);
+ ret = lyxp_expr_parse(ctx, data_path, strlen(data_path), 0, &exp);
+ LY_CHECK_GOTO(ret, cleanup);
/* compile */
oper = output ? LY_PATH_OPER_OUTPUT : LY_PATH_OPER_INPUT;