]> source.dussan.org Git - nextcloud-server.git/commitdiff
fixes if cache returns false
authorFlorin Peter <github@florin-peter.de>
Wed, 29 May 2013 18:11:13 +0000 (20:11 +0200)
committerFlorin Peter <github@florin-peter.de>
Fri, 31 May 2013 10:27:55 +0000 (12:27 +0200)
lib/public/share.php

index caf208255ae95c9423b1857f030d658a754994b7..28822cf00d9449be01caa4a0b43e6084fc77155c 100644 (file)
@@ -138,11 +138,17 @@ class Share {
 
                $shares = array();
                $publicShare = false;
+               $source = '-1';
+               $cache = false;
+
                $view = new \OC\Files\View('/' . $user . '/files/');
                $meta = $view->getFileInfo(\OC_Filesystem::normalizePath($path));
-               $source = $meta['fileid'];
-               $cache = new \OC\Files\Cache\Cache($meta['storage']);
-               
+
+               if($meta !== false) {
+                       $source = $meta['fileid'];
+                       $cache = new \OC\Files\Cache\Cache($meta['storage']);
+               }
+
                while ($source !== '-1') {
 
                        // Fetch all shares of this file path from DB
@@ -207,7 +213,11 @@ class Share {
                        
                        // let's get the parent for the next round
                        $meta = $cache->get((int)$source);
-                       $source = $meta['parent'];
+                       if($meta !== false) {
+                               $source = $meta['parent'];
+                       } else {
+                               $source = '-1';
+                       }
                }
                // Include owner in list of users, if requested
                if ($includeOwner) {