* dired.el (dired-sort-toggle): Some ls implementations only allow

a single option string.

Fixes: debbugs:12666
This commit is contained in:
Glenn Morris 2012-10-17 20:50:15 -07:00
parent 281c9d2b20
commit 40714e3da8
2 changed files with 11 additions and 1 deletions

View file

@ -1,5 +1,8 @@
2012-10-18 Glenn Morris <rgm@gnu.org>
* dired.el (dired-sort-toggle): Some ls implementations only allow
a single option string. (Bug#12666)
* minibuffer.el (completion-cycle-threshold): Doc fix.
2012-10-17 Kenichi Handa <handa@gnu.org>

View file

@ -3546,8 +3546,15 @@ With a prefix argument, edit the current listing switches instead."
(setq dired-actual-switches
(replace-match "" t t dired-actual-switches 3))))
;; Now, if we weren't sorting by date before, add the -t switch.
;; Some simple-minded ls implementations (eg ftp servers) only
;; allow a single option string, so try not to add " -t" if possible.
(unless sorting-by-date
(setq dired-actual-switches (concat dired-actual-switches " -t"))))
(setq dired-actual-switches
(concat dired-actual-switches
(if (string-match-p "\\`-[[:alnum:]]+\\'"
dired-actual-switches)
"t"
" -t")))))
(dired-sort-set-mode-line)
(revert-buffer))