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) {

Reply via email to