diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2013-12-19 23:09:40 +0200 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2013-12-19 23:09:40 +0200 |
commit | 477cb50c4c5b9e13e745a8e1413d532e27383d66 (patch) | |
tree | 8c02e96fe445d30888a163c1bd09bb3ced6e15e4 | |
parent | 0fe10e90378a965649ff81a2ac6b4bb168ea96c1 (diff) | |
download | egawk-477cb50c4c5b9e13e745a8e1413d532e27383d66.tar.gz egawk-477cb50c4c5b9e13e745a8e1413d532e27383d66.tar.bz2 egawk-477cb50c4c5b9e13e745a8e1413d532e27383d66.zip |
Bug fix in regex.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | regexec.c | 2 |
2 files changed, 6 insertions, 1 deletions
@@ -1,3 +1,8 @@ +2013-12-19 Arnold D. Robbins <arnold@skeeve.com> + + * regexec.c (re_search_internal): Make sure `dfa' pointer is + not NULL before trying to dereference it. + 2013-12-16 Arnold D. Robbins <arnold@skeeve.com> * configure.ac (AC_FUNC_VPRINTF): Remove. Not needed on current @@ -664,7 +664,7 @@ re_search_internal (preg, string, length, start, range, stop, nmatch, pmatch, nmatch -= extra_nmatch; /* Check if the DFA haven't been compiled. */ - if (BE (preg->used == 0 || dfa->init_state == NULL + if (BE (preg->used == 0 || dfa == NULL || dfa->init_state == NULL || dfa->init_state_word == NULL || dfa->init_state_nl == NULL || dfa->init_state_begbuf == NULL, 0)) return REG_NOMATCH; |