summaryrefslogtreecommitdiffstats
path: root/lib/private/Repair/AvatarPermissions.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/private/Repair/AvatarPermissions.php')
-rw-r--r--lib/private/Repair/AvatarPermissions.php10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/private/Repair/AvatarPermissions.php b/lib/private/Repair/AvatarPermissions.php
index 1d96a79ac1f..d23479f5ba8 100644
--- a/lib/private/Repair/AvatarPermissions.php
+++ b/lib/private/Repair/AvatarPermissions.php
@@ -20,6 +20,7 @@
*/
namespace OC\Repair;
+use Doctrine\DBAL\Platforms\OraclePlatform;
use OCP\IDBConnection;
use OCP\Migration\IOutput;
use OCP\Migration\IRepairStep;
@@ -71,9 +72,16 @@ class AvatarPermissions implements IRepairStep {
->from('storages')
->where($qb->expr()->like('id', $qb2->createParameter('like')));
+ if ($this->connection->getDatabasePlatform() instanceof OraclePlatform) {
+ // '' is null on oracle
+ $path = $qb2->expr()->isNull('path');
+ } else {
+ $path = $qb2->expr()->eq('path', $qb2->createNamedParameter(''));
+ }
+
$qb2->update('filecache')
->set('permissions', $qb2->createNamedParameter(23))
- ->where($qb2->expr()->eq('path', $qb2->createNamedParameter('')))
+ ->where($path)
->andWhere($qb2->expr()->in('storage', $qb2->createFunction($qb->getSQL())))
->andWhere($qb2->expr()->neq('permissions', $qb2->createNamedParameter(23)))
->setParameter('like', 'home::%');