From: Georg Ehrke Date: Fri, 27 Apr 2012 20:22:03 +0000 (+0200) Subject: fix parsing of app parameter and fix external app X-Git-Tag: v4.0.0beta~166 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=06e9ac8591648626e32611739181901a4ebabc1b;p=nextcloud-server.git fix parsing of app parameter and fix external app --- diff --git a/lib/base.php b/lib/base.php index 1e28ea1ccfd..1ac25bc520d 100644 --- a/lib/base.php +++ b/lib/base.php @@ -425,8 +425,17 @@ class OC{ //parse the given parameters self::$REQUESTEDAPP = (isset($_GET['app'])?strip_tags($_GET['app']):'files'); + if(substr_count(self::$REQUESTEDAPP, '?') != 0){ + $app = substr(self::$REQUESTEDAPP, 0, strpos(self::$REQUESTEDAPP, '?')); + $param = substr(self::$REQUESTEDAPP, strpos(self::$REQUESTEDAPP, '?') + 1); + parse_str($param, $get); + $_GET = array_merge($_GET, $get); + self::$REQUESTEDAPP = $app; + $_GET['app'] = $app; + } self::$REQUESTEDFILE = (isset($_GET['getfile'])?$_GET['getfile']:null); if(substr_count(self::$REQUESTEDFILE, '?') != 0){ + echo "WIN"; $file = substr(self::$REQUESTEDFILE, 0, strpos(self::$REQUESTEDFILE, '?')); $param = substr(self::$REQUESTEDFILE, strpos(self::$REQUESTEDFILE, '?') + 1); parse_str($param, $get); @@ -443,7 +452,6 @@ class OC{ exit; } } - //update path to lib base @file_put_contents(OC::$APPSROOT . '/apps/inc.php', ''); }