thinko in schwarzian transform, and provide a tiebreaker sort on string
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sat, 11 Sep 2010 14:18:24 +0000 (14:18 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sat, 11 Sep 2010 14:18:24 +0000 (14:18 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@17603 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/perlmods/OpenILS/Application/Search/Biblio.pm

index bfe63e2..335da6d 100644 (file)
@@ -1325,7 +1325,7 @@ sub retrieve_cached_facets {
     my $facets = {};
     if ($limit) {
        for my $f ( keys %$blob ) {
-            my @sorted = map{ { $$_[1] => $$_[0] } } sort {$$b[0] <=> $$a[0]} map { [$_, $$blob{$f}{$_}] } keys %{ $$blob{$f} };
+            my @sorted = map{ { $$_[1] => $$_[0] } } sort {$$b[0] <=> $$a[0] || $$a[1] cmp $$b[1]} map { [$$blob{$f}{$_}, $_] } keys %{ $$blob{$f} };
             @sorted = @sorted[0 .. $limit - 1] if (scalar(@sorted) > $limit);
             for my $s ( @sorted ) {
                 my ($k) = keys(%$s);