diff options
| author | Stefan Monnier | 2009-02-01 03:28:33 +0000 |
|---|---|---|
| committer | Stefan Monnier | 2009-02-01 03:28:33 +0000 |
| commit | 73d7bcb9186581589b8ab10b2b4f9f98f734d7fc (patch) | |
| tree | 5fc80a1daffea65f484c7d5b8b4d2694e72e9b1a | |
| parent | befa8175626a8be1a5f1f75341c8d05a4ffc8786 (diff) | |
| download | emacs-73d7bcb9186581589b8ab10b2b4f9f98f734d7fc.tar.gz emacs-73d7bcb9186581589b8ab10b2b4f9f98f734d7fc.zip | |
(rmail-sort-messages): Use car-less-than-car if possible.
| -rw-r--r-- | lisp/ChangeLog | 3 | ||||
| -rw-r--r-- | lisp/mail/rmailsort.el | 14 |
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 @@ | |||
| 1 | 2009-02-01 Stefan Monnier <monnier@iro.umontreal.ca> | 1 | 2009-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...") |