commit: fd2d1bbb85fe0c19617b33f5ee6729b9fe936965
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 21 13:55:00 2017 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Sep 21 14:03:38 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd2d1bbb
eapi7-ver.eclass: Optimize numeric comparison
eclass/eapi7-ver.eclass | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/eclass/eapi7-ver.eclass b/eclass/eapi7-ver.eclass
index 4cba67f8491..ead9fac5e80 100644
--- a/eclass/eapi7-ver.eclass
+++ b/eclass/eapi7-ver.eclass
@@ -207,10 +207,10 @@ _ver_compare() {
[[ 10#${a} -gt 10#${b} ]] && return 3
[[ 10#${a} -lt 10#${b} ]] && return 1
- an=${an}.; an=${an#*.}
- bn=${bn}.; bn=${bn#*.}
- while [[ -n ${an} && -n ${bn} ]]; do
+ while [[ ${an} == *.* && ${bn} == *.* ]]; do
# Other components (PMS algorithm 3.3)
+ an=${an#*.}
+ bn=${bn#*.}
a=${an%%.*}
b=${bn%%.*}
if [[ ${a} == 0* || ${b} == 0* ]]; then
@@ -223,11 +223,9 @@ _ver_compare() {
[[ ${a} -gt ${b} ]] && return 3
[[ ${a} -lt ${b} ]] && return 1
fi
- an=${an#*.}
- bn=${bn#*.}
done
- [[ -n ${an} ]] && return 3
- [[ -n ${bn} ]] && return 1
+ [[ ${an} == *.* ]] && return 3
+ [[ ${bn} == *.* ]] && return 1
# Compare letter components (PMS algorithm 3.4)
[[ ${al} > ${bl} ]] && return 3