emacs-pretest-bug
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: find-directory-p always returns nil in locate-mode on windows xp


From: Eli Zaretskii
Subject: Re: find-directory-p always returns nil in locate-mode on windows xp
Date: 24 May 2004 08:23:17 +0200

> Date: Sun, 23 May 2004 15:56:40 -0500 (CDT)
> From: Luc Teirlinck <address@hidden>
> 
> locate-mode contains:
> 
>   (make-local-variable 'dired-actual-switches)
>   (setq dired-actual-switches "")
> 
> but I believe that a lot of code (`insert-directory' at the very least)
> assumes dired-actual-switches to contain at least "-l".

Note that on Windows, ls-lisp.el is used instead of invoking the
external `ls' program, and ls-lisp always produces the "ls -l" style
listing (obviously, a missing feature), so `i' on Windows will always
insert the full listing of files in the subdirectory.

> [bash2.05b.0 ~ 3 2] ls -l --dired compdir
>   total 20
>   -rw-rw-r--    1 teirllm  teirllm        14 Apr 11 21:13 blabla
>   -rw-rw-r--    1 teirllm  teirllm         8 Apr 11 21:13 blabla~
>   drwxrwxr-x    2 teirllm  teirllm      4096 Apr  5 21:42 gogoCVS
>   drwxrwxr-x    2 teirllm  teirllm      4096 Apr  5 21:42 goodCVS
>   drwxrwxr-x    2 teirllm  teirllm      4096 Apr  5 21:42 VCS
> //DIRED// 69 75 134 141 200 207 266 273 332 335
> //DIRED-OPTIONS// --quoting-style=(null)
> 
> When called from dired, insert-directory assumes those two last lines
> are present and erases them.  But "--dired" only produces those two
> lines if "-l" is also present.  Thus, in the case of locate.el, these
> two lines are not there.  `insert-directory' erases the last two lines
> anyway.  If the directory contains at least two lines, two lines will
> be missing.  If not, we get an end-of-buffer error.

This bug will not happen on DOS and Windows, since ls-lisp removes
the "--dired" switch and doesn't emulate it.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]