Project

General

Profile

Bug #2140 ยป mod_rewrite.patch

crypt, 2009-12-31 14:37

View differences:

lighttpd-1.4.23/src/mod_rewrite.c 2009-10-20 01:10:01.000000000 +0200
buffer_reset(con->request.uri);
start = 0; end = pattern_len;
for (k = 0; k < pattern_len; k++) {
if (pattern[k] == '$' || pattern[k] == '%') {
/* got one */
for (k = 0; k < pattern_len - 1; k++) {
size_t num = pattern[k + 1] - '0';
switch(pattern[k]) {
case '$':
case '%':
/* got one */
end = k;
......
buffer_append_string_len(con->request.uri, pattern+k, pattern[k] == pattern[k+1] ? 1 : 2);
} else if (pattern[k] == '$') {
/* n is always > 0 */
size_t num = pattern[k + 1] - '0';
if (num < (size_t)n) {
buffer_append_string(con->request.uri, list[num]);
}
......
log_error_write(srv, __FILE__, __LINE__, "sb",
"used a redirect containing a %[0-9]+ in the global scope, ignored:",
rule->value);
} else {
config_append_cond_match_buffer(con, p->conf.context, con->request.uri, num);
config_append_cond_match_buffer(con, p->conf.context, con->request.uri, pattern[k + 1] - '0');
}
k++;
    (1-1/1)