View | Details | Raw Unified | Return to bug 63434
Collapse All | Expand All

(-)tables/apr_tables.c (-1 / +9 lines)
Lines 1102-1107 Link Here
1102
    apr_table_entry_t **last;
1102
    apr_table_entry_t **last;
1103
    int i;
1103
    int i;
1104
    int dups_found;
1104
    int dups_found;
1105
    apr_uint32_t cookie_checksum;
1105
1106
1106
    if (flags == APR_OVERLAP_TABLES_ADD) {
1107
    if (flags == APR_OVERLAP_TABLES_ADD) {
1107
        return;
1108
        return;
Lines 1131-1136 Link Here
1131
     */
1132
     */
1132
    sort_array = table_mergesort(t->a.pool, sort_array, t->a.nelts);
1133
    sort_array = table_mergesort(t->a.pool, sort_array, t->a.nelts);
1133
1134
1135
    COMPUTE_KEY_CHECKSUM("Cookie", cookie_checksum);
1136
1134
    /* Process any duplicate keys */
1137
    /* Process any duplicate keys */
1135
    dups_found = 0;
1138
    dups_found = 0;
1136
    sort_next = sort_array;
1139
    sort_next = sort_array;
Lines 1154-1159 Link Here
1154
                apr_table_entry_t **next = last;
1157
                apr_table_entry_t **next = last;
1155
                char *new_val;
1158
                char *new_val;
1156
                char *val_dst;
1159
                char *val_dst;
1160
                char separator = ',';
1161
                if ((*last)->key_checksum == cookie_checksum
1162
                        && !strcasecmp((*last)->key, "Cookie")) {
1163
                    separator = ';';
1164
                }
1157
                do {
1165
                do {
1158
                    len += strlen((*next)->val);
1166
                    len += strlen((*next)->val);
1159
                    len += 2; /* for ", " or trailing null */
1167
                    len += 2; /* for ", " or trailing null */
Lines 1170-1176 Link Here
1170
                        break;
1178
                        break;
1171
                    }
1179
                    }
1172
                    else {
1180
                    else {
1173
                        *val_dst++ = ',';
1181
                        *val_dst++ = separator;
1174
                        *val_dst++ = ' ';
1182
                        *val_dst++ = ' ';
1175
                    }
1183
                    }
1176
                }
1184
                }

Return to bug 63434