aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2009-02-01 03:28:33 +0000
committerStefan Monnier2009-02-01 03:28:33 +0000
commit73d7bcb9186581589b8ab10b2b4f9f98f734d7fc (patch)
tree5fc80a1daffea65f484c7d5b8b4d2694e72e9b1a
parentbefa8175626a8be1a5f1f75341c8d05a4ffc8786 (diff)
downloademacs-73d7bcb9186581589b8ab10b2b4f9f98f734d7fc.tar.gz
emacs-73d7bcb9186581589b8ab10b2b4f9f98f734d7fc.zip
(rmail-sort-messages): Use car-less-than-car if possible.
-rw-r--r--lisp/ChangeLog3
-rw-r--r--lisp/mail/rmailsort.el14
2 files changed, 9 insertions, 8 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index bd6da5daa15..9188230e6f7 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,5 +1,8 @@
12009-02-01 Stefan Monnier <monnier@iro.umontreal.ca> 12009-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
2 2
3 * mail/rmailsort.el (rmail-sort-messages): Use car-less-than-car
4 if possible.
5
3 * mail/rmailedit.el (rmail-edit-map): Move init into declaration. 6 * mail/rmailedit.el (rmail-edit-map): Move init into declaration.
4 (rmail-edit-mode, rmail-cease-edit): Use with-current-buffer. 7 (rmail-edit-mode, rmail-cease-edit): Use with-current-buffer.
5 8
diff --git a/lisp/mail/rmailsort.el b/lisp/mail/rmailsort.el
index 5b58a5c7a45..e5b9da3ea6d 100644
--- a/lisp/mail/rmailsort.el
+++ b/lisp/mail/rmailsort.el
@@ -162,7 +162,6 @@ If 1st argument REVERSE is non-nil, sort them in reverse order.
162 (let ((return-to-point 162 (let ((return-to-point
163 (if (rmail-buffers-swapped-p) 163 (if (rmail-buffers-swapped-p)
164 (point))) 164 (point)))
165 (predicate nil) ;< or string-lessp
166 (sort-lists nil)) 165 (sort-lists nil))
167 (rmail-swap-buffers-maybe) 166 (rmail-swap-buffers-maybe)
168 (message "Finding sort keys...") 167 (message "Finding sort keys...")
@@ -179,15 +178,14 @@ If 1st argument REVERSE is non-nil, sort them in reverse order.
179 (message "Finding sort keys...%d" msgnum)) 178 (message "Finding sort keys...%d" msgnum))
180 (setq msgnum (1+ msgnum)))) 179 (setq msgnum (1+ msgnum))))
181 (or reverse (setq sort-lists (nreverse sort-lists))) 180 (or reverse (setq sort-lists (nreverse sort-lists)))
182 ;; Decide predicate: < or string-lessp
183 (if (numberp (car (car sort-lists))) ;Is a key numeric?
184 (setq predicate (function <))
185 (setq predicate (function string-lessp)))
186 (setq sort-lists 181 (setq sort-lists
187 (sort sort-lists 182 (sort sort-lists
188 (function 183 ;; Decide predicate: < or string-lessp
189 (lambda (a b) 184 (if (numberp (car (car sort-lists))) ;Is a key numeric?
190 (funcall predicate (car a) (car b)))))) 185 'car-less-than-car
186 (function
187 (lambda (a b)
188 (string-lessp (car a) (car b)))))))
191 (if reverse (setq sort-lists (nreverse sort-lists))) 189 (if reverse (setq sort-lists (nreverse sort-lists)))
192 ;; Now we enter critical region. So, keyboard quit is disabled. 190 ;; Now we enter critical region. So, keyboard quit is disabled.
193 (message "Reordering messages...") 191 (message "Reordering messages...")