diff options
author | Glenn Strauss <gstrauss@gluelogic.com> | 2021-11-19 15:50:02 -0500 |
---|---|---|
committer | Glenn Strauss <gstrauss@gluelogic.com> | 2021-11-19 20:48:05 -0500 |
commit | 7ea2d407344046c81e5c6410f8a4f447efe8fdfc (patch) | |
tree | fd89e0da3fa989b57cb4f78defe8e6b13284f52d /src/configfile.h | |
parent | 04d387e37fc97a6e3176d3e03a98585fbd341793 (diff) | |
download | lighttpd-git-7ea2d407344046c81e5c6410f8a4f447efe8fdfc.tar.gz |
[core] save config regex captures only if used
save config regex captures separately only if used by url.redirect
or url.rewrite replacement directives within the condition
(or for conditions containing directives from any other module
which calls config_capture() for its directives during init)
keep pointer to match data (cond_match_t *) in r->cond_match[]
rather than cond_match_t to reduce data copying in h2_init_stream().
h2_init_stream() copies the results for already-evaluated conditions
to avoid re-evaluating connection-level conditions for each and every
stream. When conditions are reset, then the pointer in r->cond_match[]
is updated when the condition is re-evaluated. (This all assumes that
HTTP/2 connection-level conditions are not unset or re-evaluated once
HTTP/2 streams begin.)
Diffstat (limited to 'src/configfile.h')
-rw-r--r-- | src/configfile.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/configfile.h b/src/configfile.h index f38263c6..ae75e713 100644 --- a/src/configfile.h +++ b/src/configfile.h @@ -37,6 +37,7 @@ struct data_config { void *regex; struct pcre_extra *regex_study; #endif + int capture_idx; int ext; buffer comp_tag; const char *comp_key; |