From c1cec45127bc314a34eca12da2fce5d86710249c Mon Sep 17 00:00:00 2001 From: "mkanat%bugzilla.org" <> Date: Wed, 21 Feb 2007 06:53:33 +0000 Subject: Bug 371016: Versions are no longer sorted by version-sort Patch By Max Kanat-Alexander r=LpSolit, a=LpSolit --- Bugzilla/Version.pm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'Bugzilla/Version.pm') diff --git a/Bugzilla/Version.pm b/Bugzilla/Version.pm index f48de9089..ba7631a80 100644 --- a/Bugzilla/Version.pm +++ b/Bugzilla/Version.pm @@ -21,6 +21,7 @@ package Bugzilla::Version; use base qw(Bugzilla::Object); +use Bugzilla::Install::Requirements qw(vers_cmp); use Bugzilla::Util; use Bugzilla::Error; @@ -39,7 +40,9 @@ use constant DB_COLUMNS => qw( ); use constant NAME_FIELD => 'value'; -use constant LIST_ORDER => NAME_FIELD; +# This is "id" because it has to be filled in and id is probably the fastest. +# We do a custom sort in new_from_list below. +use constant LIST_ORDER => 'id'; sub new { my $class = shift; @@ -70,6 +73,12 @@ sub new { return $class->SUPER::new(@_); } +sub new_from_list { + my $self = shift; + my $list = $self->SUPER::new_from_list(@_); + return [sort { vers_cmp(lc($a->name), lc($b->name)) } @$list]; +} + sub bug_count { my $self = shift; my $dbh = Bugzilla->dbh; -- cgit v1.2.3-24-g4f1b