Просмотр исходного кода

ZF-6893: do not set base url in frontcontroller resource if value passed is empty

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@17736 44c647ce-9c0f-0410-b52a-842ac1e357ba
matthew 16 лет назад
Родитель
Сommit
da10017ce9

+ 3 - 1
library/Zend/Application/Resource/Frontcontroller.php

@@ -78,7 +78,9 @@ class Zend_Application_Resource_Frontcontroller extends Zend_Application_Resourc
                     break;
 
                 case 'baseurl':
-                    $front->setBaseUrl($value);
+                    if (!empty($value)) {
+                        $front->setBaseUrl($value);
+                    }
                     break;
 
                 case 'params':

+ 11 - 0
tests/Zend/Application/Resource/FrontcontrollerTest.php

@@ -277,6 +277,17 @@ class Zend_Application_Resource_FrontcontrollerTest extends PHPUnit_Framework_Te
         $front = $resource->init();
         $this->assertTrue($front instanceof Zend_Controller_Front);
     }
+
+    public function testNoBaseUrlShouldBeSetIfEmptyBaseUrlProvidedInOptions()
+    {
+        require_once 'Zend/Application/Resource/Frontcontroller.php';
+        $resource = new Zend_Application_Resource_Frontcontroller(array(
+            'baseurl' => '',
+        ));
+        $resource->init();
+        $front = $resource->getFrontController();
+        $this->assertNull($front->getBaseUrl());
+    }
 }
 
 if (PHPUnit_MAIN_METHOD == 'Zend_Application_Resource_FrontcontrollerTest::main') {