[Catalyst-commits] r9084 - in Catalyst-Runtime/5.80/trunk: . lib/Catalyst/Engine

t0m at dev.catalyst.perl.org t0m at dev.catalyst.perl.org
Tue Jan 13 23:38:36 GMT 2009


Author: t0m
Date: 2009-01-13 23:38:36 +0000 (Tue, 13 Jan 2009)
New Revision: 9084

Modified:
   Catalyst-Runtime/5.80/trunk/Changes
   Catalyst-Runtime/5.80/trunk/lib/Catalyst/Engine/HTTP.pm
Log:
Merge up from 5.70 trunk:
  r9021 | andyg | 2009-01-06 19:42:41 +0000 (Tue, 06 Jan 2009) | 1 line

  Handle leading CRLF in HTTP requests sometimes sent by IE6 in keep-alive requests

Modified: Catalyst-Runtime/5.80/trunk/Changes
===================================================================
--- Catalyst-Runtime/5.80/trunk/Changes	2009-01-13 22:44:35 UTC (rev 9083)
+++ Catalyst-Runtime/5.80/trunk/Changes	2009-01-13 23:38:36 UTC (rev 9084)
@@ -1,6 +1,8 @@
 # This file documents the revision history for Perl extension Catalyst.
 
 5.8000_05
+        - Handle leading CRLF in HTTP requests sometimes sent by IE6 in 
+          keep-alive requests. (andyg)
         - Fixes for FastCGI with IIS 6.0 (janus)
         - Passing request method exported by Catalyst::Test an extra
           parameter used to be ignored, but started breaking if the parameter

Modified: Catalyst-Runtime/5.80/trunk/lib/Catalyst/Engine/HTTP.pm
===================================================================
--- Catalyst-Runtime/5.80/trunk/lib/Catalyst/Engine/HTTP.pm	2009-01-13 22:44:35 UTC (rev 9083)
+++ Catalyst-Runtime/5.80/trunk/lib/Catalyst/Engine/HTTP.pm	2009-01-13 23:38:36 UTC (rev 9084)
@@ -445,7 +445,8 @@
     my $self = shift;
 
     # Parse request line
-    if ( $self->{inputbuf} !~ s/^(\w+)[ \t]+(\S+)(?:[ \t]+(HTTP\/\d+\.\d+))?[^\012]*\012// ) {
+    # Leading CRLF sometimes sent by buggy IE versions
+    if ( $self->{inputbuf} !~ s/^(?:\x0D\x0A)?(\w+)[ \t]+(\S+)(?:[ \t]+(HTTP\/\d+\.\d+))?[^\012]*\012// ) {
         return ();
     }
 




More information about the Catalyst-commits mailing list