YANG key list and unique fixes

* Fixed: YANG key list check bad performance
  * List key check did unique "xpath" lookup instead of direct child traverse
* Fixed: YANG unique single schema-nodeid required "canonical" namespace
  * E.g., `a/b` did not work even if there was default namespace in XML
* Memory leak in xpath parser
This commit is contained in:
Olof hagsand 2022-04-17 10:34:55 +02:00
parent 580396d32f
commit feec3a21d9
3 changed files with 97 additions and 64 deletions

View file

@ -479,7 +479,8 @@ abbreviatedstep : '.' predicates { $$=xp_new(XP_STEP,A_SELF, NULL,NULL, NULL
*/
axisspec : NCNAME DOUBLECOLON
{ if (($$=xp_axisname_function(_XPY, $1)) < 0) YYERROR;
_PARSE_DEBUG2("axisspec-> AXISNAME(%s -> %d) ::", $1, $$);
free($1);
_PARSE_DEBUG2("axisspec-> AXISNAME(%s -> %d) ::", $1, $$);
}
| abbreviatedaxisspec
{ $$ = $1; }