From 99a473bd628c08dc2f232c98b9220a029ad5ab99 Mon Sep 17 00:00:00 2001
From: Georg Ehrke <dev@georgswebsite.de>
Date: Fri, 20 Apr 2012 22:33:30 +0200
Subject: [PATCH] support file calls with parameter

---
 lib/base.php | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/lib/base.php b/lib/base.php
index fa5287631d..df240dca6d 100644
--- a/lib/base.php
+++ b/lib/base.php
@@ -401,8 +401,12 @@ class OC{
 		self::$REQUESTEDAPP = (isset($_GET['app'])?strip_tags($_GET['app']):'files');
 		self::$REQUESTEDFILE = $_GET['file'];
 		if(substr_count(self::$REQUESTEDFILE, '?') != 0){
-			$pos = strpos(self::$REQUESTEDFILE, '?');
-			self::$REQUESTEDFILE = substr(self::$REQUESTEDFILE, 0, $pos);
+			$pos_questionmark = strpos(self::$REQUESTEDFILE, '?');
+			$pos_equal = strpos(self::$REQUESTEDFILE, '=');
+			$pos_and = strpos(self::$REQUESTEDFILE, '?');
+			$_GET[substr(self::$REQUESTEDFILE, $pos_questionmark + 1, $pos_equal - $pos_questionmark - 1)] = substr(self::$REQUESTEDFILE, $pos_equal + 1, $pos_and);
+			self::$REQUESTEDFILE = substr(self::$REQUESTEDFILE, 0, $pos_questionmark);
+			$_GET['file'] = OC::$REQUESTEDFILE;
 		}
 		self::$REQUESTEDFILE = (isset($_GET['file'])?(OC_Helper::issubdirectory(OC::$APPSROOT . '/' . self::$REQUESTEDAPP . '/' . self::$REQUESTEDFILE, OC::$APPSROOT . '/' . self::$REQUESTEDAPP)?self::$REQUESTEDFILE:null):null);
 	}
-- 
GitLab