ZF-10017: Zend_Service_Amazon_S3::isObjectAvailable() fails on paths containing spaces
Description
All public methods on Zend_Service_Amazon_S3 operating on objects internally call _fixupObjectName() to rawurlencode path parts.
Except, isObjectAvailable() does not do that. So, this code fails:
$objectName = 'mybucket/path with spaces/file.txt';
$s3->putObject('path/to/file.txt', $objectName); // OK, file is uploaded
$s3->isObjectAvailable($objectName); // throws Zend_Uri_Exception due to spaces in the object path
The solution is to add a call to _fixupObjectName($object) in isObjectAvailable().
Comments
Posted by Marc Hodgins (mjh_ca) on 2010-06-19T12:10:39.000+0000
Patch with test attached.
Posted by Matthew Weier O'Phinney (matthew) on 2010-10-22T06:46:35.000+0000
Applied to trunk and 1.11 release branch. Not sure if we'll do another RC to reflect this change, or simply incorporate it into the final release.