From fe22fa1ff4c2108613e5403d6f8b9f6dc2cc61aa Mon Sep 17 00:00:00 2001 From: Andreas Guldstrand Date: Sun, 4 Dec 2016 21:02:38 +0200 Subject: SBO::Lib::Util: fix version_cmp for #45. --- SBO-Lib/lib/SBO/Lib/Util.pm | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'SBO-Lib/lib/SBO/Lib/Util.pm') diff --git a/SBO-Lib/lib/SBO/Lib/Util.pm b/SBO-Lib/lib/SBO/Lib/Util.pm index c4128af..3c98780 100644 --- a/SBO-Lib/lib/SBO/Lib/Util.pm +++ b/SBO-Lib/lib/SBO/Lib/Util.pm @@ -520,6 +520,17 @@ sub version_cmp { if ($v1 =~ /(.+)_\Q$kv\E$/) { $v1 = $1 } if ($v2 =~ /(.+)_\Q$kv\E$/) { $v2 = $1 } + # if $v2 doesn't end in the same thing, strip off locale info from $v1 + if ($v1 =~ /(.*)_([a-z]{2})_([A-Z]{2})$/) { + my $v = $1; + if ($v2 !~ /_$2_$3$/) { $v1 = $v; } + } + # and vice versa... + if ($v2 =~ /(.*)_([a-z]{2})_([A-Z]{2})$/) { + my $v = $1; + if ($v1 !~ /_$2_$3$/) { $v2 = $v; } + } + versioncmp($v1, $v2); } -- cgit v1.2.3