From 909282c81edb98db304e1be09c8fd69a350a1cce Mon Sep 17 00:00:00 2001 From: Georg Ehrke Date: Thu, 19 Apr 2012 22:25:21 +0200 Subject: [PATCH] remove parameters in file var before call require once --- lib/base.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/base.php b/lib/base.php index 2924a1da18..5478f08439 100644 --- a/lib/base.php +++ b/lib/base.php @@ -283,10 +283,9 @@ class OC{ public static function loadfile(){ if(file_exists(OC::$APPSROOT . '/apps/' . OC::$REQUESTEDAPP . '/' . OC::$REQUESTEDFILE)){ - OC_App::loadApps(); require_once(OC::$APPSROOT . '/apps/' . OC::$REQUESTEDAPP . '/' . OC::$REQUESTEDFILE); }else{ - header('404 Not Found'); + header('404 Not found'); } } @@ -401,7 +400,12 @@ class OC{ register_shutdown_function(array('OC_Helper','cleanTmp')); self::$REQUESTEDAPP = (isset($_GET['app'])?strip_tags($_GET['app']):'files'); - self::$REQUESTEDFILE = (isset($_GET['file'])?(OC_Helper::issubdirectory(OC::$APPSROOT . '/' . self::$REQUESTEDAPP . '/' . $_GET['file'], OC::$APPSROOT . '/' . self::$REQUESTEDAPP)?$_GET['file']:null):null); + self::$REQUESTEDFILE = $_GET['file']; + if(substr_count(self::$REQUESTEDFILE, '?') != 0){ + $pos = strpos(self::$REQUESTEDFILE, '?'); + self::$REQUESTEDFILE = substr(self::$REQUESTEDFILE, 0, $pos); + } + self::$REQUESTEDFILE = (isset($_GET['file'])?(OC_Helper::issubdirectory(OC::$APPSROOT . '/' . self::$REQUESTEDAPP . '/' . self::$REQUESTEDFILE, OC::$APPSROOT . '/' . self::$REQUESTEDAPP)?self::$REQUESTEDFILE:null):null); } }