-*- coding: utf-8 -*-
Changes with Apache 2.2.9
+ *) Don't add bogus duplicate Content-Language entries
+ PR 11035 [Davi Arnaut]
+
*) Worker / Event MPM: Fix race condition in pool recycling that leads to
segmentation faults under load. PR 44402
[Basant Kumar Kukreja <basant.kukreja sun.com>]
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
[ start all new proposals below, under PATCHES PROPOSED. ]
- * Don't add bogus duplicate Content-Language entries to generated output
- PR 11035
- http://svn.apache.org/viewvc?rev=611475&view=rev
- +1: niq, rpluem, jim
-
PATCHES PROPOSED TO BACKPORT FROM TRUNK:
[ New proposals should be added at the end of the list ]
if (!apr_is_empty_array(r->content_languages)) {
int i;
+ char *token;
char **languages = (char **)(r->content_languages->elts);
- for (i = 0; i < r->content_languages->nelts; ++i) {
- apr_table_mergen(r->headers_out, "Content-Language", languages[i]);
+ const char *field = apr_table_get(r->headers_out, "Content-Language");
+
+ while (field && (token = ap_get_list_item(r->pool, &field)) != NULL) {
+ for (i = 0; i < r->content_languages->nelts; ++i) {
+ if (!strcasecmp(token, languages[i]))
+ break;
+ }
+ if (i == r->content_languages->nelts) {
+ *((char **) apr_array_push(r->content_languages)) = token;
+ }
}
+
+ field = apr_array_pstrcat(r->pool, r->content_languages, ',');
+ apr_table_setn(r->headers_out, "Content-Language", field);
}
/*