mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-07-29 11:41:22 +03:00
fixed a determinism detection problem exposed by ##other tests commited by
* xmlregexp.c: fixed a determinism detection problem exposed by ##other tests commited by Kasimier, also added a small speedup of determinism detection. * test/results/any6_2_0* any8_1_0* any7_1_2* any7_2_2*: added the results to the regression tests now Daniel
This commit is contained in:
10
xmlregexp.c
10
xmlregexp.c
@ -1981,6 +1981,8 @@ xmlFAComputesDeterminism(xmlRegParserCtxtPtr ctxt) {
|
||||
state = ctxt->states[statenr];
|
||||
if (state == NULL)
|
||||
continue;
|
||||
if (state->nbTrans < 2)
|
||||
continue;
|
||||
for (transnr = 0;transnr < state->nbTrans;transnr++) {
|
||||
t1 = &(state->trans[transnr]);
|
||||
/*
|
||||
@ -2804,6 +2806,14 @@ xmlRegStrEqualWildcard(const xmlChar *expStr, const xmlChar *valStr) {
|
||||
* Eval if we have a wildcard for the current item.
|
||||
*/
|
||||
if (*expStr != *valStr) {
|
||||
/* if one of them starts with a wildcard make valStr be it */
|
||||
if (*valStr == '*') {
|
||||
const xmlChar *tmp;
|
||||
|
||||
tmp = valStr;
|
||||
valStr = expStr;
|
||||
expStr = tmp;
|
||||
}
|
||||
if ((*valStr != 0) && (*expStr != 0) && (*expStr++ == '*')) {
|
||||
do {
|
||||
if (*valStr == XML_REG_STRING_SEPARATOR)
|
||||
|
Reference in New Issue
Block a user