Commit 9496d1f3 authored by William A. Rowe Jr's avatar William A. Rowe Jr
Browse files

  Allow index.html.en and Index.html.FR to both be considered in negotation
  on case insensitive platforms, only.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89381 13f79535-47bb-0310-9956-ffa450edef68
parent c2c250da
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
Changes with Apache 2.0.19-dev

  *) Solve case-insensitive platforms' confusion about negotiated
     filenames, allowing files of differnt case to match in choosing
     the document to serve.  [William Rowe]

  *) Fix brokenness when ThreadsPerChild is higher than the built-in
     limit.  We left ap_threads_per_child at the higher value which
     led to segfaults when doing certain scoreboard operations.
+7 −0
Original line number Diff line number Diff line
@@ -683,6 +683,13 @@ static int find_ct(request_rec *r)
    while ((ext = ap_getword(r->pool, &fn, '.')) && *ext) {
        int found = 0;

#ifdef CASE_BLIND_FILESYSTEM
        /* We have a basic problem that folks on case-crippled systems
         * expect anything and everything to succeed
         */
        ap_str_tolower(ext);
#endif

        /* Check for Content-Type */
        if ((type = apr_table_get(conf->forced_types, ext))
            || (type = apr_table_get(hash_buckets[hash(*ext)], ext))) {
+4 −0
Original line number Diff line number Diff line
@@ -935,7 +935,11 @@ static int read_types_multi(negotiation_state *neg)
        request_rec *sub_req;
        
        /* Do we have a match? */
#ifdef CASE_BLIND_FILESYSTEM
        if (strncasecmp(dirent.name, filp, prefix_len)) {
#else
        if (strncmp(dirent.name, filp, prefix_len)) {
#endif
            continue;
        }
        if (dirent.name[prefix_len] != '.') {