summaryrefslogtreecommitdiff
path: root/src/cache.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cache.c')
-rw-r--r--src/cache.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/cache.c b/src/cache.c
index 3341388c..6df062b3 100644
--- a/src/cache.c
+++ b/src/cache.c
@@ -728,15 +728,14 @@ static void Cache_parse_header(CacheEntry_t *entry)
dFree(encoding); /* free Transfer-Encoding */
#ifndef DISABLE_COOKIES
- /* BUG: If a server feels like mixing Set-Cookie2 and Set-Cookie
- * responses which aren't identical, then we have a problem. I don't
- * know if that is a real issue though. */
- if ((Cookies = Cache_parse_multiple_fields(header, "Set-Cookie2")) ||
- (Cookies = Cache_parse_multiple_fields(header, "Set-Cookie"))) {
- a_Cookies_set(Cookies, entry->Url);
+ if ((Cookies = Cache_parse_multiple_fields(header, "Set-Cookie"))) {
+ char *server_date = Cache_parse_field(header, "Date");
+
+ a_Cookies_set(Cookies, entry->Url, server_date);
for (i = 0; (data = dList_nth_data(Cookies, i)); ++i)
dFree(data);
dList_free(Cookies);
+ dFree(server_date);
}
#endif /* !DISABLE_COOKIES */