diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2021-12-25 01:07:10 +0300 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2021-12-25 01:07:10 +0300 |
commit | 09268f58b457dba304e4dc311d98c206d367b971 (patch) | |
tree | c286e2a53afe4d252f1c7911ff7ff286cac65f7e /src/core/ngx_regex.h | |
parent | 363505e806feebb7ceb1f9edb0e3f75c1253384f (diff) | |
download | nginx-09268f58b457dba304e4dc311d98c206d367b971.tar.gz nginx-09268f58b457dba304e4dc311d98c206d367b971.zip |
Core: fixed ngx_pcre_studies cleanup.
If a configuration parsing fails for some reason, ngx_regex_module_init()
is not called, and ngx_pcre_studies remained set despite the fact that
the pool it was allocated from is already freed. This might result in
a segmentation fault during runtime regular expression compilation, such
as in SSI, for example, in the single process mode, or if a worker process
died and was respawned from a master process in such an inconsistent state.
Fix is to clear ngx_pcre_studies from the pool cleanup handler (which is
anyway used to free JIT-compiled patterns).
Diffstat (limited to 'src/core/ngx_regex.h')
0 files changed, 0 insertions, 0 deletions