dgaudet 97/07/19 01:16:15
Modified: src mod_negotiation.c
Log:
PR#94: Content negot fails unless each varient has a charset
This was applied to 1.2.1 but missed in 1.3. We also include here a
later update from Paul.
Reviewed by: Dean Gaudet, Alexei Kosut, Randy Terbush
Submitted by: Paul Sutton
Revision Changes Path
1.50 +12 -5 apache/src/mod_negotiation.c
Index: mod_negotiation.c
===================================================================
RCS file: /export/home/cvs/apache/src/mod_negotiation.c,v
retrieving revision 1.49
retrieving revision 1.50
diff -C3 -r1.49 -r1.50
*** mod_negotiation.c 1997/07/17 22:27:40 1.49
--- mod_negotiation.c 1997/07/19 08:16:14 1.50
***************
*** 1443,1450 ****
/* 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 &&
! (best->content_charset == NULL || *best->content_charset == 0 ||
! strcmp(best->content_charset, "iso-8859-1") == 0)) {
*p_bestq = q;
return 1;
}
--- 1443,1454 ----
/* 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;
}
***************
*** 1542,1550 ****
/* 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->charset_quality == best->charset_quality &&
! (best->content_charset == NULL || *best->content_charset == 0 ||
! strcmp(best->content_charset, "iso-8859-1") == 0))) {
*p_bestq = q;
return 1;
}
--- 1546,1557 ----
/* 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;
}