]> granicus.if.org Git - apache/commitdiff
Definately need a canonical name, so comparison succeeds at run time.
authorWilliam A. Rowe Jr <wrowe@apache.org>
Tue, 3 Oct 2000 13:11:25 +0000 (13:11 +0000)
committerWilliam A. Rowe Jr <wrowe@apache.org>
Tue, 3 Oct 2000 13:11:25 +0000 (13:11 +0000)
PR:
Obtained from:
Submitted by:
Reviewed by:

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@86375 13f79535-47bb-0310-9956-ffa450edef68

modules/cache/mod_file_cache.c

index 14e93af7c92cb11969fc31daf4e792962c76c847..469d07f183ec4063b8f3f0356bd211c3791501eb 100644 (file)
@@ -273,8 +273,10 @@ static const char *mmapfile(cmd_parms *cmd, void *dummy, const char *filename)
     a_file *new_file;
     a_file tmp;
     apr_file_t *fd = NULL;
+    char *fspec;
 
-    if (apr_stat(&tmp.finfo, filename, cmd->temp_pool) != APR_SUCCESS) { 
+    fspec = ap_os_case_canonical_filename(cmd->pool, filename);
+    if (apr_stat(&tmp.finfo, fspec, cmd->temp_pool) != APR_SUCCESS) { 
        ap_log_error(APLOG_MARK, APLOG_WARNING, errno, cmd->server,
            "mod_file_cache: unable to stat(%s), skipping", filename);
        return NULL;
@@ -284,7 +286,7 @@ static const char *mmapfile(cmd_parms *cmd, void *dummy, const char *filename)
            "mod_file_cache: %s isn't a regular file, skipping", filename);
        return NULL;
     }
-    if (apr_open(&fd, filename, APR_READ, APR_OS_DEFAULT, cmd->temp_pool) 
+    if (apr_open(&fd, fspec, APR_READ, APR_OS_DEFAULT, cmd->temp_pool) 
                 != APR_SUCCESS) { 
        ap_log_error(APLOG_MARK, APLOG_WARNING, errno, cmd->server,
            "mod_file_cache: unable to open(%s, O_RDONLY), skipping", filename);
@@ -299,7 +301,7 @@ static const char *mmapfile(cmd_parms *cmd, void *dummy, const char *filename)
        return NULL;
     }
     apr_close(fd);
-    tmp.filename = apr_pstrdup(cmd->pool, filename);
+    tmp.filename = fspec;
     sconf = ap_get_module_config(cmd->server->module_config, &file_cache_module);
     new_file = apr_push_array(sconf->files);
     *new_file = tmp;