Catch exceptions in upgrading files_sharing, skip the errors for now

This commit is contained in:
Bart Visscher 2012-09-21 23:25:57 +02:00
parent 11bdc8baa8
commit 8cfa618df5
1 changed files with 12 additions and 2 deletions

View File

@ -1,6 +1,7 @@
<?php <?php
$installedVersion = OCP\Config::getAppValue('files_sharing', 'installed_version'); $installedVersion = OCP\Config::getAppValue('files_sharing', 'installed_version');
if (version_compare($installedVersion, '0.3', '<')) { if (version_compare($installedVersion, '0.3', '<')) {
$update_error = false;
$query = OCP\DB::prepare('SELECT * FROM `*PREFIX*sharing`'); $query = OCP\DB::prepare('SELECT * FROM `*PREFIX*sharing`');
$result = $query->execute(); $result = $query->execute();
$groupShares = array(); $groupShares = array();
@ -38,10 +39,19 @@ if (version_compare($installedVersion, '0.3', '<')) {
$shareWith = $row['uid_shared_with']; $shareWith = $row['uid_shared_with'];
} }
OC_User::setUserId($row['uid_owner']); OC_User::setUserId($row['uid_owner']);
OCP\Share::shareItem($itemType, $itemSource, $shareType, $shareWith, $permissions); try {
OCP\Share::shareItem($itemType, $itemSource, $shareType, $shareWith, $permissions);
}
catch (Exception $e) {
$update_error = true;
echo 'Skipping sharing "'.$row['source'].'" to "'.$shareWith.'" (error is "'.$e->getMessage().'")<br/>';
}
} }
} }
if ($update_error) {
throw new Exception('There were some problems upgrading the sharing of files');
}
// NOTE: Let's drop the table after more testing // NOTE: Let's drop the table after more testing
// $query = OCP\DB::prepare('DROP TABLE `*PREFIX*sharing`'); // $query = OCP\DB::prepare('DROP TABLE `*PREFIX*sharing`');
// $query->execute(); // $query->execute();
} }