From 1ad581a3ecb372ebf69d5681ebe6d5693962f7d9 Mon Sep 17 00:00:00 2001 From: David Robertson Date: Thu, 25 May 2023 11:30:42 +0100 Subject: [PATCH] recency comparator: avoid 2x map lookups --- sync3/sort.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sync3/sort.go b/sync3/sort.go index 075c695..b454886 100644 --- a/sync3/sort.go +++ b/sync3/sort.go @@ -147,10 +147,12 @@ func (s *SortableRooms) comparatorSortByName(i, j int) int { func (s *SortableRooms) comparatorSortByRecency(i, j int) int { ri, rj := s.resolveRooms(i, j) - if ri.GetLastInterestedEventTimestamp(s.listKey) == rj.GetLastInterestedEventTimestamp(s.listKey) { + tsRi := ri.GetLastInterestedEventTimestamp(s.listKey) + tsRj := rj.GetLastInterestedEventTimestamp(s.listKey) + if tsRi == tsRj { return 0 } - if ri.GetLastInterestedEventTimestamp(s.listKey) > rj.GetLastInterestedEventTimestamp(s.listKey) { + if tsRi > tsRj { return 1 } return -1