[Pkg-owncloud-commits] [owncloud] 05/12: Ensure that passed argument is always a string

David Prévot taffit at moszumanska.debian.org
Tue Jun 2 01:14:04 UTC 2015


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository owncloud.

commit 5fa749cd9656ca6eab30bac0ef4e7625b8a8be2e
Author: Lukas Reschke <lukas at owncloud.com>
Date:   Fri Feb 13 12:49:34 2015 +0100

    Ensure that passed argument is always a string
    
    Some code paths called the `normalizePath` functionality with types other than a string which resulted in unexpected behaviour.
    
    Thus the function is now manually casting the type to a string and I corrected the usage in list.php as well.
---
 apps/files/ajax/list.php         | 2 +-
 lib/private/files/filesystem.php | 9 +++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/apps/files/ajax/list.php b/apps/files/ajax/list.php
index 4908016..21c88e2 100644
--- a/apps/files/ajax/list.php
+++ b/apps/files/ajax/list.php
@@ -5,7 +5,7 @@ OCP\JSON::checkLoggedIn();
 $l = OC_L10N::get('files');
 
 // Load the files
-$dir = isset($_GET['dir']) ? $_GET['dir'] : '';
+$dir = isset($_GET['dir']) ? (string)$_GET['dir'] : '';
 $dir = \OC\Files\Filesystem::normalizePath($dir);
 
 try {
diff --git a/lib/private/files/filesystem.php b/lib/private/files/filesystem.php
index 03fbe31..883bd4f 100644
--- a/lib/private/files/filesystem.php
+++ b/lib/private/files/filesystem.php
@@ -694,9 +694,18 @@ class Filesystem {
 	 * Fix common problems with a file path
 	 * @param string $path
 	 * @param bool $stripTrailingSlash
+	 * @param bool $isAbsolutePath
 	 * @return string
 	 */
 	public static function normalizePath($path, $stripTrailingSlash = true, $isAbsolutePath = false) {
+		/**
+		 * FIXME: This is a workaround for existing classes and files which call
+		 *        this function with another type than a valid string. This
+		 *        conversion should get removed as soon as all existing
+		 *        function calls have been fixed.
+		 */
+		$path = (string)$path;
+
 		if ($path == '') {
 			return '/';
 		}

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/owncloud.git



More information about the Pkg-owncloud-commits mailing list