From: <wel...@us...> - 2011-02-27 10:37:21
|
Revision: 7008 http://planeshift.svn.sourceforge.net/planeshift/?rev=7008&view=rev Author: weltall2 Date: 2011-02-27 10:37:15 +0000 (Sun, 27 Feb 2011) Log Message: ----------- split the version in minor and major. keeping the previous define for the updater creation scripts Modified Paths: -------------- trunk/src/pslaunch/pslaunch.cpp trunk/src/pslaunch/updaterconfig.cpp trunk/src/pslaunch/updaterconfig.h trunk/src/pslaunch/updaterengine.cpp trunk/src/pslaunch/updaterengine.h trunk/src/pslaunch/updatexmls/HowToTest.txt Modified: trunk/src/pslaunch/pslaunch.cpp =================================================================== --- trunk/src/pslaunch/pslaunch.cpp 2011-02-27 10:06:12 UTC (rev 7007) +++ trunk/src/pslaunch/pslaunch.cpp 2011-02-27 10:37:15 UTC (rev 7008) @@ -403,14 +403,14 @@ // Initialize updater engine. UpdaterEngine* engine = new UpdaterEngine(args, updater->GetObjectRegistry(), "pslaunch"); - printf("PlaneShift Updater Version %1.2f for %s.\n" + printf("PlaneShift Updater Version %d.%d for %s.\n" "Launcher and updater for Planeshift\n\n" "pslaunch [--help] [--console] [--repair] [--switch]\n\n" "--help Displays this help dialog\n" "--console Run updater without the GUI\n" "--switch Switch active updater mirror\n" "--repair Check for any problems and prompt to repair them\n", - UPDATER_VERSION, engine->GetConfig()->GetCurrentConfig()->GetPlatform()); + UPDATER_VERSION_MAJOR, UPDATER_VERSION_MINOR, engine->GetConfig()->GetCurrentConfig()->GetPlatform()); // Terminate updater! delete argvs; @@ -442,7 +442,7 @@ // Initialize updater engine. UpdaterEngine* engine = new UpdaterEngine(args, updater->GetObjectRegistry(), "pslaunch"); - printf("\nPlaneShift Updater Version %1.2f for %s.\n\n", UPDATER_VERSION, engine->GetConfig()->GetCurrentConfig()->GetPlatform()); + printf("\nPlaneShift Updater Version %d.%d for %s.\n\n", UPDATER_VERSION_MAJOR, UPDATER_VERSION_MINOR, engine->GetConfig()->GetCurrentConfig()->GetPlatform()); // Run the update process! updater->RunUpdate(engine); Modified: trunk/src/pslaunch/updaterconfig.cpp =================================================================== --- trunk/src/pslaunch/updaterconfig.cpp 2011-02-27 10:06:12 UTC (rev 7007) +++ trunk/src/pslaunch/updaterconfig.cpp 2011-02-27 10:37:15 UTC (rev 7008) @@ -117,7 +117,9 @@ Config::Config() { - updaterVersionLatest = 0.0f; + updaterVersionLatest = 0.0f; + updaterVersionLatestMajor = 0; + updaterVersionLatestMinor = 0; } bool Config::LoadMirrors(csRef<iDocumentNode> node) @@ -162,6 +164,12 @@ if(updaterNode) { updaterVersionLatest = updaterNode->GetAttributeValueAsFloat("version"); + csString tmpVersion = updaterNode->GetAttributeValue("version"); + csStringArray versionArray; + versionArray.SplitString(updaterNode->GetAttributeValue("version"), "."); + //we take for granted we always have 2 numbers + updaterVersionLatestMajor = strtoul(versionArray.Get(0),NULL,0); + updaterVersionLatestMinor = strtoul(versionArray.Get(1),NULL,0); csString md5 = "md5"; csRef<iDocumentNode> md5Node; Modified: trunk/src/pslaunch/updaterconfig.h =================================================================== --- trunk/src/pslaunch/updaterconfig.h 2011-02-27 10:06:12 UTC (rev 7007) +++ trunk/src/pslaunch/updaterconfig.h 2011-02-27 10:37:15 UTC (rev 7008) @@ -156,6 +156,16 @@ /* Get latest updater version */ float GetUpdaterVersionLatest() const { return updaterVersionLatest; } + /** Get latest updater major version + * @return An unsigned int with the major version + */ + unsigned int GetUpdaterVersionLatestMajor() const { return updaterVersionLatestMajor; } + + /** Get latest updater minor version + * @return An unsigned int with the minor version + */ + unsigned int GetUpdaterVersionLatestMinor() const { return updaterVersionLatestMinor; } + /* Get latest updater version md5sum */ const char* GetUpdaterVersionLatestMD5() const { return updaterVersionLatestMD5; } @@ -163,9 +173,15 @@ bool IsActive() const { return active; } private: - /* Latest updater version */ + /// Latest updater version float updaterVersionLatest; + /// Latest updater version, only major version + unsigned int updaterVersionLatestMajor; + + /// Latest updater version, only major version + unsigned int updaterVersionLatestMinor; + /* Latest version md5sum */ csString updaterVersionLatestMD5; Modified: trunk/src/pslaunch/updaterengine.cpp =================================================================== --- trunk/src/pslaunch/updaterengine.cpp 2011-02-27 10:06:12 UTC (rev 7007) +++ trunk/src/pslaunch/updaterengine.cpp 2011-02-27 10:37:15 UTC (rev 7008) @@ -391,7 +391,9 @@ } // Compare Versions. - return(config->UpdatePlatform() && (config->GetNewConfig()->GetUpdaterVersionLatest() - UPDATER_VERSION > 0.01)); + return(config->UpdatePlatform() && + (config->GetNewConfig()->GetUpdaterVersionLatestMajor() > UPDATER_VERSION_MAJOR) && + (config->GetNewConfig()->GetUpdaterVersionLatestMinor() > UPDATER_VERSION_MINOR)); } bool UpdaterEngine::CheckGeneral() Modified: trunk/src/pslaunch/updaterengine.h =================================================================== --- trunk/src/pslaunch/updaterengine.h 2011-02-27 10:06:12 UTC (rev 7007) +++ trunk/src/pslaunch/updaterengine.h 2011-02-27 10:37:15 UTC (rev 7008) @@ -36,6 +36,9 @@ /* To be incremented every time we want to make an update. */ #define UPDATER_VERSION 2.92 +#define UPDATER_VERSION_MAJOR 2 +#define UPDATER_VERSION_MINOR 92 + struct iConfigManager; struct iVFS; Modified: trunk/src/pslaunch/updatexmls/HowToTest.txt =================================================================== --- trunk/src/pslaunch/updatexmls/HowToTest.txt 2011-02-27 10:06:12 UTC (rev 7007) +++ trunk/src/pslaunch/updatexmls/HowToTest.txt 2011-02-27 10:37:15 UTC (rev 7008) @@ -5,14 +5,14 @@ Possible names are: win32, linux32, linux64, macosx. -Get the md5sum of that zip and in a different updaterinfo.xml change the <version> to a number higher than the number in your current UPDATER_VERSION in psupdaterengine.h +Get the md5sum of that zip and in a different updaterinfo.xml change the <version> to a number higher than the number in your current UPDATER_VERSION_MAJOR and UPDATER_VERSION_MINOR in psupdaterengine.h and place the md5sum in the correct platform "". Also change the mirror in both .xml to be the full path to the folder you're going to upload to. Upload the zip and the second .xml to that location. -Now when you run the updater it should self-update. It will self-update every time you run the updater, unless you set UPDATER_VERSION in the 'new' updater to be the same as or higher +Now when you run the updater it should self-update. It will self-update every time you run the updater, unless you set UPDATER_VERSION_MAJOR and UPDATER_VERSION_MINOR in the 'new' updater to be the same as or higher than the number specified in the updaterinfo.xml on the mirror. @@ -33,4 +33,4 @@ Each .xml has example lines in, so you can see how it works. To create the .vcdiff files you need to use an app called xDelta3, which can be found here: http://xdelta.org/ You need to compile the cli utility and then to create the .vcdiff use these arguments: -xdelta3(.exe) -e -9 -s old_file new_file output \ No newline at end of file +xdelta3(.exe) -e -9 -s old_file new_file output This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |