diff options
| author | louis <louis.braun@gmx.de> | 2015-07-29 18:32:03 +0200 |
|---|---|---|
| committer | louis <louis.braun@gmx.de> | 2015-07-29 18:32:03 +0200 |
| commit | 2efe2314e244e04f8d5fc61976e30a99240d54b2 (patch) | |
| tree | 59fe057643735b1cae6c1521a1ee85666f649229 | |
| parent | 6e0f56e56c8eae6052d59f840f7108befa389693 (diff) | |
| download | vdr-plugin-skindesigner-2efe2314e244e04f8d5fc61976e30a99240d54b2.tar.gz vdr-plugin-skindesigner-2efe2314e244e04f8d5fc61976e30a99240d54b2.tar.bz2 | |
fixed bug in checking skin version
| -rw-r--r-- | HISTORY | 2 | ||||
| -rw-r--r-- | config.c | 15 | ||||
| -rw-r--r-- | setup.c | 50 |
3 files changed, 41 insertions, 26 deletions
@@ -399,4 +399,6 @@ Version 0.6.1 Version 0.6.2 - added progressmodeonly viewelement in displayreplay +- fixed bug in checking skin version + @@ -359,14 +359,17 @@ bool cDesignerConfig::CheckVersion(string name, string &neededVersion) { int verMinor = atoi(tokensVer[1].c_str()); int verMikro = atoi(tokensVer[2].c_str()); - if (minVerMajor > verMajor) { - return false; - } else if (minVerMinor > verMinor) { + if (minVerMajor < verMajor) + return true; + if (minVerMajor > verMajor) return false; - } else if (minVerMikro > verMikro) { + if (minVerMinor < verMinor) + return true; + if (minVerMinor > verMinor) return false; - } - return true; + if (minVerMikro <= verMikro) + return true; + return false; } bool cDesignerConfig::SkinInstalled(string name) { @@ -201,22 +201,32 @@ eOSState cSkinDesignerSetup::ProcessKey(eKeys Key) { if (Key == kRed) { string versionNeeded = ""; bool versionOk = config.CheckVersion(currentSkin, versionNeeded); - if (!versionOk) { - cString error = cString::sprintf("%s %s %s %s %s", - tr("Skin Designer"), - tr("version"), - versionNeeded.c_str(), - tr("or higher"), - tr("needed")); - Skins.Message(mtError, *error); - return state; - } if (type == itSkinRepo) { + if (!versionOk) { + cString error = cString::sprintf("%s %s %s %s %s", + tr("Skin Designer"), + tr("version"), + versionNeeded.c_str(), + tr("or higher"), + tr("needed")); + Skins.Message(mtError, *error); + return state; + } Skins.Message(mtStatus, *cString::sprintf("%s ...", tr("Installing Skin"))); StartInstallation(currentSkin); } else if (type == itSkinSetup || type == itNoSkinSetup) { bool gitAvailable = StartUpdate(currentSkin); if (gitAvailable) { + if (!versionOk) { + cString error = cString::sprintf("%s %s %s %s %s", + tr("Skin Designer"), + tr("version"), + versionNeeded.c_str(), + tr("or higher"), + tr("needed")); + Skins.Message(mtError, *error); + return state; + } Skins.Message(mtStatus, *cString::sprintf("%s ...", tr("Updating Skin from Git"))); } else { Skins.Message(mtStatus, tr("No Git Repsoitory available")); @@ -402,18 +412,18 @@ eOSState cSkindesignerSkinSetup::ProcessKey(eKeys Key) { case kRed: { string versionNeeded = ""; bool versionOk = config.CheckVersion(skin, versionNeeded); - if (!versionOk) { - cString error = cString::sprintf("%s %s %s %s %s", - tr("Skin Designer"), - tr("version"), - versionNeeded.c_str(), - tr("or higher"), - tr("needed")); - Skins.Message(mtError, *error); - break; - } bool gitAvailable = StartUpdate(skin); if (gitAvailable) { + if (!versionOk) { + cString error = cString::sprintf("%s %s %s %s %s", + tr("Skin Designer"), + tr("version"), + versionNeeded.c_str(), + tr("or higher"), + tr("needed")); + Skins.Message(mtError, *error); + break; + } Skins.Message(mtStatus, *cString::sprintf("%s ...", tr("Updating Skin from Git"))); } else { Skins.Message(mtStatus, tr("No Git Repsoitory available")); |
