Author: kn
Date: Tue Dec  4 11:17:05 2007
New Revision: 6911

Log:
- Fixed issue #12145: Content-Length header is not detected on Apache

Modified:
    trunk/Webdav/ChangeLog
    trunk/Webdav/src/transports/header_handler.php

Modified: trunk/Webdav/ChangeLog
==============================================================================
--- trunk/Webdav/ChangeLog [iso-8859-1] (original)
+++ trunk/Webdav/ChangeLog [iso-8859-1] Tue Dec  4 11:17:05 2007
@@ -1,3 +1,8 @@
+1.0rc1 - [RELEASEDATE]
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- Fixed issue #12145: Content-Length header is not detected on Apache
+
 1.0beta1 - Wednesday 28 November 2007
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 

Modified: trunk/Webdav/src/transports/header_handler.php
==============================================================================
--- trunk/Webdav/src/transports/header_handler.php [iso-8859-1] (original)
+++ trunk/Webdav/src/transports/header_handler.php [iso-8859-1] Tue Dec  4 
11:17:05 2007
@@ -27,14 +27,31 @@
      * @var array(string=>string)
      */
     protected $headerMap = array(
-        'Content-Length' => 'HTTP_CONTENT_LENGTH',
-        'Content-Type'   => 'CONTENT_TYPE',
-        'Depth'          => 'HTTP_DEPTH',
-        'Destination'    => 'HTTP_DESTINATION',
-        'Lock-Token'     => 'HTTP_LOCK_TOKEN',
-        'Overwrite'      => 'HTTP_OVERWRITE',
-        'Timeout'        => 'HTTP_TIMEOUT',
-        'Server'         => 'SERVER_SOFTWARE',
+        'Content-Length' => array( 
+            'HTTP_CONTENT_LENGTH',
+            'CONTENT_LENGTH',
+        ),
+        'Content-Type'   => array( 
+            'CONTENT_TYPE',
+        ),
+        'Depth'          => array( 
+            'HTTP_DEPTH',
+        ),
+        'Destination'    => array( 
+            'HTTP_DESTINATION',
+        ),
+        'Lock-Token'     => array(
+            'HTTP_LOCK_TOKEN',
+        ),
+        'Overwrite'      => array(
+            'HTTP_OVERWRITE',
+        ),
+        'Timeout'        => array(
+            'HTTP_TIMEOUT',
+        ),
+        'Server'         => array(
+            'SERVER_SOFTWARE',
+        ),
     );
 
     /**
@@ -82,10 +99,17 @@
         {
             throw new ezcWebdavUnknownHeaderException( $headerName );
         }
-        return ( isset( $_SERVER[$this->headerMap[$headerName]] )
-            ? $this->processHeader( $headerName, 
$_SERVER[$this->headerMap[$headerName]] )
-            : null
-        );
+
+        foreach ( $this->headerMap[$headerName] as $serverHeaderName )
+        {
+            if ( isset( $_SERVER[$serverHeaderName] ) )
+            {
+                return $this->processHeader( $headerName, 
$_SERVER[$serverHeaderName] );
+            }
+        }
+
+        // Default to null, if header is not available
+        return null;
     }
 
     /**


-- 
svn-components mailing list
svn-components@lists.ez.no
http://lists.ez.no/mailman/listinfo/svn-components

Reply via email to