From: Björn Schießle Date: Wed, 29 May 2013 12:40:47 +0000 (+0200) Subject: use public API for error handling; improved while condition X-Git-Tag: v5.0.7~20 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=8e512bdfdf7cc135ffe7fefaf8f420d7d681fd94;p=nextcloud-server.git use public API for error handling; improved while condition --- diff --git a/lib/public/share.php b/lib/public/share.php index 0d4dc0f3fb7..b9af2bc4086 100644 --- a/lib/public/share.php +++ b/lib/public/share.php @@ -144,7 +144,7 @@ class Share { $parent = $meta['parent']; $cache = new \OC\Files\Cache\Cache($meta['storage']); - while ($path !== 'files' && $parent !== '-1') { + while ($parent !== '-1') { // Fetch all shares of this file path from DB $query = \OC_DB::prepare( @@ -157,14 +157,13 @@ class Share { $result = $query->execute(array($source, self::SHARE_TYPE_USER)); - if (\OC_DB::isError($result)) { - \OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR); - } - - while ($row = $result->fetchRow()) { - $shares[] = $row['share_with']; + if (\OCP\DB::isError($result)) { + \OCP\Util::writeLog('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR); + } else { + while ($row = $result->fetchRow()) { + $shares[] = $row['share_with']; + } } - // We also need to take group shares into account $query = \OC_DB::prepare( @@ -177,13 +176,13 @@ class Share { $result = $query->execute(array($source, self::SHARE_TYPE_GROUP)); - if (\OC_DB::isError($result)) { - \OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR); - } - - while ($row = $result->fetchRow()) { - $usersInGroup = \OC_Group::usersInGroup($row['share_with']); - $shares = array_merge($shares, $usersInGroup); + if (\OCP\DB::isError($result)) { + \OCP\Util::writeLog('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR); + } else { + while ($row = $result->fetchRow()) { + $usersInGroup = \OC_Group::usersInGroup($row['share_with']); + $shares = array_merge($shares, $usersInGroup); + } } //check for public link shares @@ -198,20 +197,18 @@ class Share { $result = $query->execute(array($source, self::SHARE_TYPE_LINK)); - if (\OC_DB::isError($result)) { - \OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR); - } - - if ($result->fetchRow()) { - $publicShare = true; + if (\OCP\DB::isError($result)) { + \OCP\Util::writeLog('OCP\Share', \OC_DB::getErrorMessage($result), \OC_Log::ERROR); + } else { + if ($result->fetchRow()) { + $publicShare = true; + } } } // let's get the parent for the next round $meta = $cache->get((int)$source); $parent = $meta['parent']; - $parentMeta = $cache->get((int)$parent); - $path = $parentMeta['path']; $source = $parent; } // Include owner in list of users, if requested