Fix two bugs. One was caused by the previous commit.
The other was created by using invalid memory.
This commit is contained in:
parent
c629be5d68
commit
eb4204fe76
|
@ -328,7 +328,7 @@ liblex_result _pattern_build_chain(pattern_chain** into, int* ids, int pattern_i
|
|||
result = _pattern_chain_create(¤t_chain, NULL, NULL);
|
||||
(*index)++;
|
||||
}
|
||||
} if(string[*index] == '.') {
|
||||
} else if(string[*index] == '.') {
|
||||
pattern_node* new_node = NULL;
|
||||
_pattern_chain_append_chain_discard(current_chain, &sub_chain);
|
||||
result = _pattern_chain_create(&sub_chain, NULL, NULL);
|
||||
|
@ -438,6 +438,8 @@ liblex_result pattern_compile(pattern* ptrn, char* expression, int id){
|
|||
ptrn->size = ids + 1;
|
||||
free(full_chain);
|
||||
} else {
|
||||
ptrn->head = NULL;
|
||||
ptrn->size = 0;
|
||||
if(full_chain){
|
||||
_pattern_free(full_chain->head, ids);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user