]> granicus.if.org Git - apache/commitdiff
Two cases we are certain of canonical correctness
authorWilliam A. Rowe Jr <wrowe@apache.org>
Thu, 23 Aug 2001 21:05:42 +0000 (21:05 +0000)
committerWilliam A. Rowe Jr <wrowe@apache.org>
Thu, 23 Aug 2001 21:05:42 +0000 (21:05 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90586 13f79535-47bb-0310-9956-ffa450edef68

modules/http/http_request.c
modules/mappers/mod_dir.c

index 8c8584fdfa4440064fc7ce66ea9e4fc25e6842d4..d5de0a676f05b08063e5bd9654c34dccee0d89e9 100644 (file)
@@ -569,6 +569,7 @@ AP_DECLARE(void) ap_internal_fast_redirect(request_rec *rr, request_rec *r)
     r->uri = rr->uri;
     r->args = rr->args;
     r->filename = rr->filename;
+    r->canonical_filename = rr->canonical_filename;
     r->handler = rr->handler;
     r->content_type = rr->content_type;
     r->content_encoding = rr->content_encoding;
index 13ff29abbe1a50a31d9d395d4f9bcd7e013621d8..6097e0a8cbaefa5b1aa3ee35a588c24255e66e06 100644 (file)
@@ -161,7 +161,11 @@ static int handle_dir(request_rec *r)
      */
 
     if (r->filename[strlen(r->filename) - 1] != '/') {
+        if (r->filename != r->canonical_filename)
+            r->canonical_filename = NULL;
         r->filename = apr_pstrcat(r->pool, r->filename, "/", NULL);
+        if (r->canonical_filename)
+            r->canonical_filename = r->filename;
     }
 
     if (d->index_names) {