mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-07-29 11:41:22 +03:00
Fix a Relaxng bug raised by libvirt test suite
* xmlregexp.c: other fixes in 2.7.4 raised this internal error when comparing ranges, this affects among others detection of the determinism * test/relaxng/libvirt* result/relaxng/libvirt*: add a test case based on libvirt schemas and tests
This commit is contained in:
11
xmlregexp.c
11
xmlregexp.c
@ -2095,12 +2095,13 @@ xmlFACompareRanges(xmlRegRangePtr range1, xmlRegRangePtr range2) {
|
||||
(range2->type == XML_REGEXP_EPSILON)) {
|
||||
return(0);
|
||||
} else if (range1->type == range2->type) {
|
||||
if ((range1->type != XML_REGEXP_CHARVAL) ||
|
||||
(range1->end < range2->start) ||
|
||||
(range2->end < range1->start))
|
||||
ret = 1;
|
||||
else
|
||||
if (range1->type != XML_REGEXP_CHARVAL)
|
||||
ret = 1;
|
||||
else if ((range1->end < range2->start) ||
|
||||
(range2->end < range1->start))
|
||||
ret = 0;
|
||||
else
|
||||
ret = 1;
|
||||
} else if (range1->type == XML_REGEXP_CHARVAL) {
|
||||
int codepoint;
|
||||
int neg = 0;
|
||||
|
Reference in New Issue
Block a user