Merge pull request #22829 from owncloud/stable9-revert-22264-read-version-from-info.xml-only

[stable9] Revert "No longer evaluate appinfo/version"
This commit is contained in:
Thomas Müller 2016-03-04 08:55:52 +01:00
commit 4da858b3b7
6 changed files with 19 additions and 6 deletions

View File

@ -567,7 +567,7 @@ class OC_App {
}
/**
* get the last version of the app from appinfo/info.xml
* get the last version of the app, either from appinfo/version or from appinfo/info.xml
*
* @param string $appId
* @return string
@ -587,9 +587,14 @@ class OC_App {
* @return string
*/
public static function getAppVersionByPath($path) {
$versionFile = $path . '/appinfo/version';
$infoFile = $path . '/appinfo/info.xml';
$appData = self::getAppInfo($infoFile, true);
return isset($appData['version']) ? $appData['version'] : '';
if (is_file($versionFile)) {
return trim(file_get_contents($versionFile));
} else {
$appData = self::getAppInfo($infoFile, true);
return isset($appData['version']) ? $appData['version'] : '';
}
}

View File

@ -299,6 +299,9 @@ class AppManager implements IAppManager {
/**
* Returns the app information from "appinfo/info.xml".
*
* If no version was present in "appinfo/info.xml", reads it
* from the external "appinfo/version" file instead.
*
* @param string $appId app id
*
* @return array app iinfo

View File

@ -389,11 +389,16 @@ class OC_Installer{
}
// check if the ocs version is the same as the version in info.xml/version
$version = trim($info['version']);
$versionFile= $extractDir.'/appinfo/version';
if(is_file($versionFile)) {
$version = trim(file_get_contents($versionFile));
}else{
$version = trim($info['version']);
}
if(isset($data['appdata']['version']) && $version<>trim($data['appdata']['version'])) {
OC_Helper::rmdirr($extractDir);
throw new \Exception($l->t("App can't be installed because the version in info.xml is not the same as the version reported from the app store"));
throw new \Exception($l->t("App can't be installed because the version in info.xml/version is not the same as the version reported from the app store"));
}
return $info;

View File

@ -142,7 +142,7 @@ class App {
}
/**
* Get the last version of the app from appinfo/info.xml
* Get the last version of the app, either from appinfo/version or from appinfo/info.xml
* @param string $app
* @return string
* @since 4.0.0

Binary file not shown.

Binary file not shown.