You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axkit-dev@xml.apache.org by ma...@sergeant.org on 2006/08/05 16:58:49 UTC

[SVN] [46] More closely follow the cookie spec

Revision: 46
Author:   matt
Date:     2006-08-05 14:58:26 +0000 (Sat, 05 Aug 2006)

Log Message:
-----------
More closely follow the cookie spec

Modified Paths:
--------------
    trunk/lib/AxKit2/HTTPHeaders.pm

Modified: trunk/lib/AxKit2/HTTPHeaders.pm
===================================================================
--- trunk/lib/AxKit2/HTTPHeaders.pm	2006-08-05 03:44:23 UTC (rev 45)
+++ trunk/lib/AxKit2/HTTPHeaders.pm	2006-08-05 14:58:26 UTC (rev 46)
@@ -6,7 +6,7 @@
 use warnings;
 no  warnings qw(deprecated);
 
-use AxKit2::Utils qw(uri_decode uri_encode);
+use AxKit2::Utils qw(uri_decode uri_encode http_date);
 
 use fields (
             'headers',      # href; lowercase header -> comma-sep list of values
@@ -299,7 +299,12 @@
         
         my $key = uri_encode($name);
         my $cookie = "$key=" . join("&", map uri_encode($_), ref($value) ? @$value : $value);
-        $self->header('Set-Cookie', join('; ', $cookie, @params));
+        $cookie = join('; ', $cookie, @params);
+        if (my $oldcookie = $self->header('Set-Cookie')) {
+            $cookie = "$oldcookie, $cookie";
+        }
+        $self->header('Set-Cookie', $cookie);
+        $self->header('Expires', http_date(0)) unless $self->header('Expires');
         return;
     }
     die "Cannot extract cookies from the response"