diff options
author | Joachim Lingner <jl@openoffice.org> | 2004-05-12 08:43:20 +0000 |
---|---|---|
committer | Joachim Lingner <jl@openoffice.org> | 2004-05-12 08:43:20 +0000 |
commit | dd3daf9e02c9f57549714321736670b447045d05 (patch) | |
tree | 9c5dd70691ddfcb131cac7acc150be73cc0a8ef3 /jvmfwk | |
parent | 9722559d3f3c7cad4bd1abf8bd2e3cbfad4f67fe (diff) |
#i20052#
Diffstat (limited to 'jvmfwk')
-rw-r--r-- | jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx | 82 | ||||
-rw-r--r-- | jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx | 13 |
2 files changed, 35 insertions, 60 deletions
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx index bc7f15d545d5..b0cd5c71d1b1 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx @@ -2,9 +2,9 @@ * * $RCSfile: sunversion.cxx,v $ * - * $Revision: 1.1 $ + * $Revision: 1.2 $ * - * last change: $Author: jl $ $Date: 2004-04-19 15:36:26 $ + * last change: $Author: jl $ $Date: 2004-05-12 09:43:19 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -232,37 +232,24 @@ bool SunVersion::init(const char *szVersion) m_preRelease = Rel_EA1; else if( ! strcmp(pCur,"ea2")) m_preRelease = Rel_EA2; + else if( ! strcmp(pCur,"ea3")) + m_preRelease = Rel_EA3; else if ( ! strcmp(pCur,"beta")) m_preRelease = Rel_BETA; else if ( ! strcmp(pCur,"beta1")) m_preRelease = Rel_BETA1; else if ( ! strcmp(pCur,"beta2")) m_preRelease = Rel_BETA2; + else if ( ! strcmp(pCur,"beta3")) + m_preRelease = Rel_BETA3; else if (! strcmp(pCur, "rc")) m_preRelease = Rel_RC; else if (! strcmp(pCur, "rc1")) m_preRelease = Rel_RC1; else if (! strcmp(pCur, "rc2")) m_preRelease = Rel_RC2; -#if defined FREEBSD - // #i21615#: FreeBSD adds p[1-8] to their JDK port. - else if (! strcmp(pCur, "p8")) - m_preRelease = Rel_BETA; - else if (! strcmp(pCur, "p7")) - m_preRelease = Rel_BETA; - else if (! strcmp(pCur, "p6")) - m_preRelease = Rel_BETA; - else if (! strcmp(pCur, "p5")) - m_preRelease = Rel_BETA; - else if (! strcmp(pCur, "p4")) - m_preRelease = Rel_BETA; - else if (! strcmp(pCur, "p3")) - m_preRelease = Rel_BETA; - else if (! strcmp(pCur, "p2")) - m_preRelease = Rel_BETA; - else if (! strcmp(pCur, "p1")) - m_preRelease = Rel_BETA; -#endif + else if (! strcmp(pCur, "rc3")) + m_preRelease = Rel_RC3; else return false; } @@ -290,49 +277,30 @@ bool SunVersion::operator > (const SunVersion& ver) const if( &ver == this) return false; - bool ret= false; - bool bDone = false; - - if (m_preRelease == ver.m_preRelease) + //compare major.minor.maintainance + for( int i= 0; i < 4; i ++) { - //compare major.minor.maintainance - for( int i= 0; i < 4; i ++) + // 1.4 > 1.3 + if(m_arVersionParts[i] > ver.m_arVersionParts[i]) { - // 1.4 > 1.3 - if(m_arVersionParts[i] > ver.m_arVersionParts[i]) - { - ret= true; - bDone = true; - break; - } - else if (m_arVersionParts[i] < ver.m_arVersionParts[i]) - { - bDone = true; - break; - } + return true; + } + else if (m_arVersionParts[i] < ver.m_arVersionParts[i]) + { + return false; } - //major.minor.maintainance_update are equal. test for a trailing char - if (bDone == false - && m_nUpdateSpecial > ver.m_nUpdateSpecial) - ret = true; - } - else if (m_preRelease == Rel_NONE && ver.m_preRelease > Rel_NONE) - {// a pre release is always minor to a relesase version: - // 1.3.1 > 1.4.0-beta - ret = true; - } - else if (m_preRelease > Rel_NONE && ver.m_preRelease == Rel_NONE) - { - ret = false; } - else if(m_preRelease > ver.m_preRelease) + //major.minor.maintainance_update are equal. test for a trailing char + if (m_nUpdateSpecial > ver.m_nUpdateSpecial) { - ret = true; + return true; } - else - ret = false; // m_preRelease < ver.m_preRelease - return ret; + //compare pre -release values + if (m_preRelease > ver.m_preRelease) + return true; + + return false; } bool SunVersion::operator < (const SunVersion& ver) const diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx index 57642d0191a4..46a27686ec5e 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx @@ -2,9 +2,9 @@ * * $RCSfile: sunversion.hxx,v $ * - * $Revision: 1.1 $ + * $Revision: 1.2 $ * - * last change: $Author: jl $ $Date: 2004-04-19 15:36:59 $ + * last change: $Author: jl $ $Date: 2004-05-12 09:43:20 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -99,12 +99,15 @@ protected: Rel_EA, Rel_EA1, Rel_EA2, + Rel_EA3, Rel_BETA, Rel_BETA1, Rel_BETA2, + Rel_BETA3, Rel_RC, Rel_RC1, - Rel_RC2 + Rel_RC2, + Rel_RC3 }; //contains major,minor,micro,update @@ -119,6 +122,10 @@ public: SunVersion(const rtl::OUString& usVer); ~SunVersion(); + /** + Pre-release versions are taken into account. + 1.5.0-beta > 1.5.0-ea > 1.4.2 + */ bool operator > (const SunVersion& ver) const; bool operator < (const SunVersion& ver) const; bool operator == (const SunVersion& ver) const; |