From 9359787557671f5ae03d5137c345d0af64d940b8 Mon Sep 17 00:00:00 2001 From: "Ignacio R. Morelle" Date: Tue, 19 Aug 2008 01:49:30 +0000 Subject: [PATCH] Fixed 1.0.0 versus 1.0.0+anything case. --- src/version.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/version.cpp b/src/version.cpp index deb69652063..b130c3c53f7 100644 --- a/src/version.cpp +++ b/src/version.cpp @@ -254,19 +254,21 @@ bool operator!=(const version_info& l, const version_info& r) bool operator<(const version_info& l, const version_info& r) { - return version_numbers_comparison_internal(l, r, LT) && ( - (l.special_version().empty() && r.special_version().empty()) || - (l.special_version().empty() && !r.special_version().empty()) || - (l.special_version() < r.special_version()) + return version_numbers_comparison_internal(l, r, LT) || + (l == r && ((l.special_version().empty() && r.special_version().empty()) || + (l.special_version().empty() && !r.special_version().empty()) || + (l.special_version() < r.special_version()) + ) ); } bool operator>(const version_info& l, const version_info& r) { - return version_numbers_comparison_internal(l, r, GT) && ( - (r.special_version().empty() && l.special_version().empty()) || - (r.special_version().empty() && !l.special_version().empty()) || - (l.special_version() > r.special_version()) + return version_numbers_comparison_internal(l, r, GT) || + (l == r && ((r.special_version().empty() && l.special_version().empty()) || + (r.special_version().empty() && !l.special_version().empty()) || + (l.special_version() > r.special_version()) + ) ); }