From ac6e3da21d1fcd4a70e130389da9e4d3398e92d0 Mon Sep 17 00:00:00 2001 From: Mike Willbanks Date: Tue, 12 Feb 2013 07:41:12 -0800 Subject: [PATCH 1/2] Resolved IsImage to set the mimetype if there was no mimetype options set --- library/Zend/Validator/File/IsImage.php | 9 ++++++--- tests/ZendTest/Validator/File/IsImageTest.php | 9 +++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/library/Zend/Validator/File/IsImage.php b/library/Zend/Validator/File/IsImage.php index 7946b1e70e4..66a16a7a772 100644 --- a/library/Zend/Validator/File/IsImage.php +++ b/library/Zend/Validator/File/IsImage.php @@ -103,11 +103,14 @@ public function __construct($options = array()) if ($options instanceof Traversable) { $options = ArrayUtils::iteratorToArray($options); } - - if (empty($options)) { - $options = array('mimeType' => $default); + if ($options === null) { + $options = array(); } parent::__construct($options); + + if (!$this->getMimeType()) { + $this->setMimeType($default); + } } } diff --git a/tests/ZendTest/Validator/File/IsImageTest.php b/tests/ZendTest/Validator/File/IsImageTest.php index d5951baef88..2649b2392a9 100644 --- a/tests/ZendTest/Validator/File/IsImageTest.php +++ b/tests/ZendTest/Validator/File/IsImageTest.php @@ -173,6 +173,15 @@ public function testOptionsAtConstructor() $this->assertEquals('image/gif,image/jpg', $validator->getMimeType()); } + public function testNonMimeOptionsAtConstructorStillSetsDefaults() + { + $validator = new File\IsImage(array( + 'enableHeaderCheck' => true, + )); + + $this->assertNotEmpty($validator->getMimeType()); + } + /** * @group ZF-11258 */ From d80871fc2f43f901e3d2e22a79566fea5ee315ac Mon Sep 17 00:00:00 2001 From: Mike Willbanks Date: Tue, 12 Feb 2013 07:45:51 -0800 Subject: [PATCH 2/2] Resolved same issue for IsCompressed validator --- library/Zend/Validator/File/IsCompressed.php | 8 ++++++-- library/Zend/Validator/File/IsImage.php | 1 + tests/ZendTest/Validator/File/IsCompressedTest.php | 9 +++++++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/library/Zend/Validator/File/IsCompressed.php b/library/Zend/Validator/File/IsCompressed.php index 63bb09a1615..d80af4e72e9 100644 --- a/library/Zend/Validator/File/IsCompressed.php +++ b/library/Zend/Validator/File/IsCompressed.php @@ -79,10 +79,14 @@ public function __construct($options = array()) $options = ArrayUtils::iteratorToArray($options); } - if (empty($options)) { - $options = array('mimeType' => $default); + if ($options === null) { + $options = array(); } parent::__construct($options); + + if (!$this->getMimeType()) { + $this->setMimeType($default); + } } } diff --git a/library/Zend/Validator/File/IsImage.php b/library/Zend/Validator/File/IsImage.php index 66a16a7a772..0f0e02a6260 100644 --- a/library/Zend/Validator/File/IsImage.php +++ b/library/Zend/Validator/File/IsImage.php @@ -103,6 +103,7 @@ public function __construct($options = array()) if ($options instanceof Traversable) { $options = ArrayUtils::iteratorToArray($options); } + if ($options === null) { $options = array(); } diff --git a/tests/ZendTest/Validator/File/IsCompressedTest.php b/tests/ZendTest/Validator/File/IsCompressedTest.php index 8b9183dc515..c20da7a0fae 100644 --- a/tests/ZendTest/Validator/File/IsCompressedTest.php +++ b/tests/ZendTest/Validator/File/IsCompressedTest.php @@ -182,6 +182,15 @@ public function testOptionsAtConstructor() $this->assertEquals('image/gif,image/jpg', $validator->getMimeType()); } + public function testNonMimeOptionsAtConstructorStillSetsDefaults() + { + $validator = new File\IsCompressed(array( + 'enableHeaderCheck' => true, + )); + + $this->assertNotEmpty($validator->getMimeType()); + } + /** * @group ZF-11258 */