diff options
Diffstat (limited to 'lib/private/app.php')
-rw-r--r-- | lib/private/app.php | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/lib/private/app.php b/lib/private/app.php index f49db15defe..2abc015a91f 100644 --- a/lib/private/app.php +++ b/lib/private/app.php @@ -1024,21 +1024,12 @@ class OC_App { */ public static function getAppVersions() { static $versions; - if (isset($versions)) { // simple cache, needs to be fixed - return $versions; // when function is used besides in checkUpgrade - } - $versions = array(); - try { - $query = OC_DB::prepare('SELECT `appid`, `configvalue` FROM `*PREFIX*appconfig`' - . ' WHERE `configkey` = \'installed_version\''); - $result = $query->execute(); - while ($row = $result->fetchRow()) { - $versions[$row['appid']] = $row['configvalue']; - } - return $versions; - } catch (\Exception $e) { - return array(); + + if(!$versions) { + $appConfig = \OC::$server->getAppConfig(); + $versions = $appConfig->getValues(false, 'installed_version'); } + return $versions; } |