further merges from cakephp 2.10.8

This commit is contained in:
Isaac Connor
2018-03-21 13:09:55 -04:00
parent 1346558d59
commit a4fee5c91c
19 changed files with 202 additions and 122 deletions

View File

@@ -4,18 +4,18 @@
*
* This file will render views from views/pages/
*
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* CakePHP(tm) : Rapid Development Framework (https://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
*
* Licensed under The MIT License
* For full copyright and license information, please see the LICENSE.txt
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @copyright Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
* @link https://cakephp.org CakePHP(tm) Project
* @package app.Controller
* @since CakePHP(tm) v 0.2.9
* @license http://www.opensource.org/licenses/mit-license.php MIT License
* @license https://opensource.org/licenses/mit-license.php MIT License
*/
App::uses('AppController', 'Controller');
@@ -26,7 +26,7 @@ App::uses('AppController', 'Controller');
* Override this controller by placing a copy in controllers directory of an application
*
* @package app.Controller
* @link http://book.cakephp.org/2.0/en/controllers/pages-controller.html
* @link https://book.cakephp.org/2.0/en/controllers/pages-controller.html
*/
class PagesController extends AppController {
@@ -40,10 +40,10 @@ class PagesController extends AppController {
/**
* Displays a view
*
* @param mixed What page to display
* @return void
* @return CakeResponse|null
* @throws ForbiddenException When a directory traversal attempt.
* @throws NotFoundException When the view file could not be found
* or MissingViewException in debug mode.
* or MissingViewException in debug mode.
*/
public function display() {
$path = func_get_args();
@@ -52,6 +52,9 @@ class PagesController extends AppController {
if (!$count) {
return $this->redirect('/');
}
if (in_array('..', $path, true) || in_array('.', $path, true)) {
throw new ForbiddenException();
}
$page = $subpage = $title_for_layout = null;
if (!empty($path[0])) {