Hi all,

The current sorting algorithm on the ticket report pages is unstable, which
makes it difficult to sort the report by more than one column. Looking into
the code I found relatively easy fix that would turn the sorting functions
into stable one:

for sortText and sortKey the change is just:

if (aa==bb) return a.rowIndex - b.rowIndex;

for sortNumeric it may be:

if (aa==bb) return a.rowIndex - b.rowIndex;
return aa-bb;

or super precisely:

if (aa-bb < 0.000001) return a.rowIndex - b.rowIndex;
return aa-bb;

Where eps = 0.000001 is an arbitrary small float, which causes that numbers
closer to each other than eps are considered equal.

What do you think?

  Cheers,
  Jacek
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to