Raah, I forgot the actual patch in the companion message. Here it is.
Cheers
Michiel
--- request.c.orig Tue Mar 16 21:41:04 2004
+++ request.c Thu Mar 18 17:49:14 2004
@@ -722,7 +722,7 @@
switch (c) {
case '*':
if (host) {
- dest += l = sprintf(dest, "%.*s", m - n, host);
+ dest += l = sprintf(dest, "%.*s", (int) (m - n), host);
n += l;
break;
}
@@ -845,6 +845,8 @@
if (get_path_info(r) == -1) {
if (debug)
log_d("get_path_info failed for %s", r->path_translated);
+ if (r->status)
+ return 0;
r->error_file = r->c->error_404_file;
r->status = 404;
return 1;
@@ -1581,10 +1583,6 @@
log_d("process_request: %s", r->path_translated);
s = process_path_translated(r);
} while (++n < 3 && s == 1 && r->error_file);
- if (n == 3 && s == 1) {
- log_d("process_request: loop detected");
- r->status = 500;
- }
}
if (r->status) {
if (prepare_reply(r) == -1) {