From: mkanat%bugzilla.org <> Date: Wed, 21 Feb 2007 06:53:33 +0000 (+0000) Subject: Bug 371016: Versions are no longer sorted by version-sort X-Git-Tag: bugzilla-3.0rc1~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c1cec45127bc314a34eca12da2fce5d86710249c;p=thirdparty%2Fbugzilla.git Bug 371016: Versions are no longer sorted by version-sort Patch By Max Kanat-Alexander r=LpSolit, a=LpSolit --- diff --git a/Bugzilla/Version.pm b/Bugzilla/Version.pm index f48de9089b..ba7631a805 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;