> It could be errors in building the initial automata, it could be
an error > when removing epsilon transitions, or it could be an error > when doing the execution, likely one of the 2 first ones. It is freeing the state node marked as the start state for the second atom(01), inside function xmlFAEliminateEpsilonTransitions, inturn
invoked from xmlRegexpCompile. regexp: '(2){0,1}1' 3 atoms: 00 atom: charval once char 2 01 atom: subexpr once start -572662307 end 2 <<<
start pointer is getting freed 02 atom: charval once char 1 6 states: state: START 0, 4 transitions: trans: removed trans: removed trans: count based 0, epsilon to 4 trans: counted 0, char 2 atom 0, to 2 state: NULL state: 2, 3 transitions: trans: count based 0, epsilon to 4 trans: removed trans: counted 0, char 2 atom 0, to 2 state: NULL state: 4, 1 transitions: trans: char 1 atom 2, to 5 state: FINAL 5, 0 transitions: 1 counters: 0: min -1 max 0 I am not sure whether this node is deleted because of some problem
while creation of the automata or the problem entirely lies in function xmlFAEliminateEpsilonTransitions. Is the regular _expression_ created correctly?? To me the third
transition in state 2, should move to state 4… Any clues to take it forward?? Thanks !! Regards, Harbhanu |