xpath BUGFIX handle logic operators when trying predicate compile
diff --git a/src/xpath.c b/src/xpath.c
index 00850c4..4781538 100644
--- a/src/xpath.c
+++ b/src/xpath.c
@@ -7773,6 +7773,11 @@
/* ']' */
while (lyxp_check_token(NULL, exp, e_idx, LYXP_TOKEN_BRACK2)) {
+ if (!lyxp_check_token(NULL, exp, e_idx, LYXP_TOKEN_OPER_LOG)) {
+ /* higher priority than '=' */
+ rc = LY_ENOT;
+ goto cleanup;
+ }
++e_idx;
}
@@ -7814,6 +7819,11 @@
/* ']' */
while (lyxp_check_token(NULL, exp, e_idx, LYXP_TOKEN_BRACK2)) {
+ if (!lyxp_check_token(NULL, exp, e_idx, LYXP_TOKEN_OPER_LOG)) {
+ /* higher priority than '=' */
+ rc = LY_ENOT;
+ goto cleanup;
+ }
++e_idx;
}