emacs-devel
[Top][All Lists]
Advanced

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

Re: Bug in Ange-FTP with renaming files


From: Kai Großjohann
Subject: Re: Bug in Ange-FTP with renaming files
Date: Sun, 06 Jul 2003 16:48:52 +0200
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

address@hidden (Kai Großjohann) writes:

> I shall try to investigate further, but I thought it would be good to
> let you know -- more eyes find more bugs...

Here is something fishy I found: after the last `R' command in dired,
dired-rename-file calls dired-rename-subdir, but the args specified
are not directories (see the second line in the following;
/tmp/foo-kai/kais-file was the old name, /tmp/kais-file is the new
name, and both are regular files):

  dired-fun-in-all-buffers("/ftp:address@hidden:/tmp/foo-kai/kais-file/" nil 
dired-rename-subdir-1 "/ftp:address@hidden:/tmp/foo-kai/kais-file/" 
"/ftp:address@hidden:/tmp/kais-file/")
  dired-rename-subdir("/ftp:address@hidden:/tmp/foo-kai/kais-file" 
"/ftp:address@hidden:/tmp/kais-file")
  dired-rename-file("/ftp:address@hidden:/tmp/foo-kai/kais-file" 
"/ftp:address@hidden:/tmp/kais-file" nil)
  funcall(dired-rename-file "/ftp:address@hidden:/tmp/foo-kai/kais-file" 
"/ftp:address@hidden:/tmp/kais-file" nil)
  (progn (funcall file-creator from to dired-overwrite-confirmed) (if overwrite 
(dired-remove-file to)) (setq success-count (1+ success-count)) (message "%s: 
%d of %d" operation success-count total) (dired-add-file to actual-marker-char))
  (condition-case err (progn (funcall file-creator from to 
dired-overwrite-confirmed) (if overwrite ...) (setq success-count ...) (message 
"%s: %d of %d" operation success-count total) (dired-add-file to 
actual-marker-char)) (file-error (progn ... ...)))
  (let* ((overwrite ...) (dired-overwrite-confirmed ...) (actual-marker-char 
...)) (condition-case err (progn ... ... ... ... ...) (file-error ...)))
  (if (not to) (setq skipped (cons ... skipped)) (let* (... ... ...) 
(condition-case err ... ...)))
  (lambda (from) (setq to (funcall name-constructor from)) (if (equal to from) 
(progn ... ...)) (if (not to) (setq skipped ...) (let* ... 
...)))("/ftp:address@hidden:/tmp/foo-kai/kais-file")
  mapcar((lambda (from) (setq to (funcall name-constructor from)) (if (equal to 
from) (progn ... ...)) (if (not to) (setq skipped ...) (let* ... ...))) 
("/ftp:address@hidden:/tmp/foo-kai/kais-file"))
  (let (to overwrite-query overwrite-backup-query) (mapcar (function ...) 
fn-list))
  (let (failures skipped (success-count 0) (total ...)) (let (to 
overwrite-query overwrite-backup-query) (mapcar ... fn-list)) (cond (failures 
...) (skipped ...) (t ...)))
  dired-create-files(dired-rename-file "Move" 
("/ftp:address@hidden:/tmp/foo-kai/kais-file") #[(from) "\302\303!       
\"\207" [from target expand-file-name file-name-nondirectory] 3] t)
  dired-do-create-files(move dired-rename-file "Move" nil t "Rename")
  dired-do-rename(nil)
  call-interactively(dired-do-rename)

-- 
~/.signature





reply via email to

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