]> git.eshelyaron.com Git - emacs.git/commitdiff
(rmail-sort-messages): Use car-less-than-car if possible.
authorStefan Monnier <monnier@iro.umontreal.ca>
Sun, 1 Feb 2009 03:28:33 +0000 (03:28 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sun, 1 Feb 2009 03:28:33 +0000 (03:28 +0000)
lisp/ChangeLog
lisp/mail/rmailsort.el

index bd6da5daa157c0da3518de863d4f63f9e6ad4884..9188230e6f7ca6874fd3d4f7ea4c318f7d8a3705 100644 (file)
@@ -1,5 +1,8 @@
 2009-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+       * mail/rmailsort.el (rmail-sort-messages): Use car-less-than-car
+       if possible.
+
        * mail/rmailedit.el (rmail-edit-map): Move init into declaration.
        (rmail-edit-mode, rmail-cease-edit): Use with-current-buffer.
 
index 5b58a5c7a454273f9bec1388c5f6c8aa3f8ab26c..e5b9da3ea6d9f4e2a1ea5be40b2504f2e7d259b2 100644 (file)
@@ -162,7 +162,6 @@ If 1st argument REVERSE is non-nil, sort them in reverse order.
     (let ((return-to-point
           (if (rmail-buffers-swapped-p)
               (point)))
-         (predicate nil)                       ;< or string-lessp
          (sort-lists nil))
       (rmail-swap-buffers-maybe)
       (message "Finding sort keys...")
@@ -179,15 +178,14 @@ If 1st argument REVERSE is non-nil, sort them in reverse order.
              (message "Finding sort keys...%d" msgnum))
          (setq msgnum (1+ msgnum))))
       (or reverse (setq sort-lists (nreverse sort-lists)))
-      ;; Decide predicate: < or string-lessp
-      (if (numberp (car (car sort-lists))) ;Is a key numeric?
-         (setq predicate (function <))
-       (setq predicate (function string-lessp)))
       (setq sort-lists
            (sort sort-lists
-                 (function
-                  (lambda (a b)
-                    (funcall predicate (car a) (car b))))))
+                  ;; Decide predicate: < or string-lessp
+                  (if (numberp (car (car sort-lists))) ;Is a key numeric?
+                      'car-less-than-car
+                    (function
+                     (lambda (a b)
+                       (string-lessp (car a) (car b)))))))
       (if reverse (setq sort-lists (nreverse sort-lists)))
       ;; Now we enter critical region.  So, keyboard quit is disabled.
       (message "Reordering messages...")