fielding    99/02/06 03:58:46

  Modified:    src      CHANGES
               src/modules/standard mod_negotiation.c
  Log:
  Remove charset=ISO-8859-1 fiddle from the RVSA comparison, since RVSA
  doesn't need such fiddles.
  
  Submitted by: Koen Holtman
  Reviewed by:  Roy Fielding
  
  Revision  Changes    Path
  1.1236    +3 -2      apache-1.3/src/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/CHANGES,v
  retrieving revision 1.1235
  retrieving revision 1.1236
  diff -u -r1.1235 -r1.1236
  --- CHANGES   1999/02/06 11:00:09     1.1235
  +++ CHANGES   1999/02/06 11:58:43     1.1236
  @@ -6,8 +6,9 @@
   
     *) Remove unused code to disable transparent negotiation when
        negotiating on encoding only, as we now handle encoding too
  -     (though this is nonstandard for TCN), and fix bugs in debugging
  -     statements within mod_negotiation. [Koen Holtman]
  +     (though this is nonstandard for TCN), remove charset=ISO-8859-1
  +     fiddle from the fiddle-averse RVSA comparison, and fix bugs in
  +     some debugging statements within mod_negotiation. [Koen Holtman]
   
     *) Fixed a rare memory corruption possibility in mod_dir if the index
        file is negotiable and no acceptable variant can be found.
  
  
  
  1.95      +2 -15     apache-1.3/src/modules/standard/mod_negotiation.c
  
  Index: mod_negotiation.c
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/modules/standard/mod_negotiation.c,v
  retrieving revision 1.94
  retrieving revision 1.95
  diff -u -r1.94 -r1.95
  --- mod_negotiation.c 1999/02/06 11:00:15     1.94
  +++ mod_negotiation.c 1999/02/06 11:58:45     1.95
  @@ -1556,7 +1556,7 @@
   }
   
   /* For a given variant, find the 'q' value of the charset given
  - * on the Accept-Charset line. If not charsets are listed,
  + * on the Accept-Charset line. If no charsets are listed,
    * assume value of '1'.
    */
   static void set_charset_quality(negotiation_state *neg, var_rec *variant)
  @@ -1805,19 +1805,6 @@
               *p_bestq = q;
               return 1;
           }
  -        /* If the best variant's charset is ISO-8859-1 and this variant has
  -         * the same charset quality, then we prefer this variant
  -         */
  -        if (variant->charset_quality == best->charset_quality &&
  -            (variant->content_charset != NULL &&
  -             *variant->content_charset != '\0' &&
  -             strcmp(variant->content_charset, "iso-8859-1") != 0) &&
  -            (best->content_charset == NULL ||
  -             *best->content_charset == '\0' ||
  -             strcmp(best->content_charset, "iso-8859-1") == 0)) {
  -            *p_bestq = q;
  -            return 1;
  -        }
       }
       return 0;
   }
  @@ -1835,7 +1822,7 @@
       /* For non-transparent negotiation, server can choose how
        * to handle the negotiation. We'll use the following in
        * order: content-type, language, content-type level, charset,
  -     * content length.
  +     * content encoding, content length.
        *
        * For each check, we have three possible outcomes:
        *   This variant is worse than current best: return 0
  
  
  

Reply via email to