From 8f2e8fa324f0115ee127a423e93014629962b6ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Wed, 29 May 2019 08:05:30 +0200 Subject: [PATCH] Run repair steps when enabling an app that has already been installed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- lib/private/Installer.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/private/Installer.php b/lib/private/Installer.php index a410c6a011..b96c614aa6 100644 --- a/lib/private/Installer.php +++ b/lib/private/Installer.php @@ -129,6 +129,11 @@ class Installer { \OC_App::checkAppDependencies($this->config, $l, $info, $ignoreMax); \OC_App::registerAutoloading($appId, $basedir); + $previousVersion = $this->config->getAppValue($info['id'], 'installed_version', false); + if ($previousVersion) { + OC_App::executeRepairSteps($appId, $info['repair-steps']['pre-migration']); + } + //install the database if(is_file($basedir.'/appinfo/database.xml')) { if (\OC::$server->getConfig()->getAppValue($info['id'], 'installed_version') === null) { @@ -140,6 +145,9 @@ class Installer { $ms = new \OC\DB\MigrationService($info['id'], \OC::$server->getDatabaseConnection()); $ms->migrate(); } + if ($previousVersion) { + OC_App::executeRepairSteps($appId, $info['repair-steps']['post-migration']); + } \OC_App::setupBackgroundJobs($info['background-jobs']);