# HG changeset patch # User insilmaril # Date 1228398467 0 # Node ID 79b0656dbe7d8fdc2ee252cc9f947ab126846fc4 # Parent e47fe0d7b05bcd4a06905992b840c387d3ad5786 Changed parsing of version to allow subreleases diff -r e47fe0d7b05b -r 79b0656dbe7d mapeditor.cpp --- a/mapeditor.cpp Mon Dec 01 16:44:35 2008 +0000 +++ b/mapeditor.cpp Thu Dec 04 13:47:47 2008 +0000 @@ -1806,6 +1806,7 @@ return aborted; } +// cout <<"ME::save filePath="< + +bool checkVersion (const QString &v) +{ + // returns true, if vym is able to read file regarding + // the version set with setVersion + return checkVersion (v,__VYM_VERSION); +} + + +bool checkVersion (const QString &v, const QString &d) +{ + bool ok; + int v1; + int v2; + int v3; + int d1; + int d2; + int d3; + + QRegExp rx("(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})"); + int pos=rx.indexIn (v); + if (pos>-1) + { + v1=rx.cap(1).toInt(&ok); + v2=rx.cap(2).toInt(&ok); + v3=rx.cap(3).toInt(&ok); + } else + qWarning (QString ("Warning: Checking version failed for v=%1").arg(v)); + + pos=rx.indexIn (d); + if (pos>-1) + { + d1=rx.cap(1).toInt(&ok); + d2=rx.cap(2).toInt(&ok); + d3=rx.cap(3).toInt(&ok); + } else + qWarning (QString ("Warning: Checking version failed for d=%1").arg(d)); + + + if (d1 > v1) + return true; + if (d1 < v1) + return false; + if (d2 > v2) + return true; + if (d2 < v2) + return false; + if (d3 > v3) + return true; + if (d3 < v3) + return false; + return true; + +} diff -r e47fe0d7b05b -r 79b0656dbe7d version.h --- a/version.h Mon Dec 01 16:44:35 2008 +0000 +++ b/version.h Thu Dec 04 13:47:47 2008 +0000 @@ -4,10 +4,10 @@ #include #define __VYM_NAME "VYM" -#define __VYM_VERSION "1.12.2" -#define __VYM_CODENAME "Maintenance Update a" +#define __VYM_VERSION "1.12.2b" +#define __VYM_CODENAME "Maintenance Update " //#define __VYM_CODENAME "Codename: development version" -#define __VYM_BUILD_DATE "2008-12-01" +#define __VYM_BUILD_DATE "2008-12-04" bool checkVersion(const QString &);