From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Glenn Morris Newsgroups: gmane.emacs.bugs Subject: bug#9565: 23.3; Dired and recursive copy from ftp Date: Wed, 21 Sep 2011 14:48:24 -0400 Message-ID: <727h51ag07.fsf@fencepost.gnu.org> References: <864o0784zi.fsf@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1316630939 3341 80.91.229.12 (21 Sep 2011 18:48:59 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 21 Sep 2011 18:48:59 +0000 (UTC) Cc: Yury Bulka To: 9565@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Sep 21 20:48:55 2011 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1R6Rqo-0007i5-MG for geb-bug-gnu-emacs@m.gmane.org; Wed, 21 Sep 2011 20:48:54 +0200 Original-Received: from localhost ([::1]:42111 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6Rqn-00007K-Va for geb-bug-gnu-emacs@m.gmane.org; Wed, 21 Sep 2011 14:48:53 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:40324) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6Rqj-0008Vi-3w for bug-gnu-emacs@gnu.org; Wed, 21 Sep 2011 14:48:50 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R6Rqg-0005S0-Nv for bug-gnu-emacs@gnu.org; Wed, 21 Sep 2011 14:48:49 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:42527) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R6Rqg-0005Rw-Ja for bug-gnu-emacs@gnu.org; Wed, 21 Sep 2011 14:48:46 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1R6Rqw-000146-IJ for bug-gnu-emacs@gnu.org; Wed, 21 Sep 2011 14:49:02 -0400 X-Loop: help-debbugs@gnu.org In-Reply-To: <864o0784zi.fsf@gmail.com> Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 21 Sep 2011 18:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 9565 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 9565-submit@debbugs.gnu.org id=B9565.13166309234063 (code B ref 9565); Wed, 21 Sep 2011 18:49:02 +0000 Original-Received: (at 9565) by debbugs.gnu.org; 21 Sep 2011 18:48:43 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1R6Rqd-00013U-3O for submit@debbugs.gnu.org; Wed, 21 Sep 2011 14:48:43 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1R6Rqb-00013N-6Z for 9565@debbugs.gnu.org; Wed, 21 Sep 2011 14:48:42 -0400 Original-Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1R6RqK-00027N-Co; Wed, 21 Sep 2011 14:48:24 -0400 X-Spook: RSA Hugo Chavez CDC Gazprom Sears Tower EuroFed Vince X-Ran: 8#X/RjO2zw^C-@22\T`RR'Z4r='$\BU9iGQ]7&{HEBF^iqUQxhqN+{lv*]_R=hP23sB0vT X-Hue: cyan X-Attribution: GM User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Wed, 21 Sep 2011 14:49:02 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 1) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:51580 Archived-At: This still happens with the current Emacs trunk. Here is a backtrace: Debugger entered--Lisp error: (wrong-type-argument integerp nil) signal(wrong-type-argument (integerp nil)) (cond ((and completion (zerop (length localname)) (memq operation (quote (file-exists-p file-directory-p)))) t) ((and completion (zerop (length localname)) (memq operation (quote (expand-file-name file-name-as-directory)))) filename) (t (signal (car err) (cdr err)))) (condition-case err (let ((sf (symbol-function foreign))) (when (and (listp sf) (eq (car sf) (quote autoload))) (let ((default-directory (tramp-compat-temporary-file-directory))) (load (cadr sf) (quote noerror)))) (apply foreign operation args)) (quit (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" (append (list operation) args))) (signal (car err) (cdr err))) (error (cond ((and completion (zerop (length localname)) (memq operation (quote (file-exists-p file-directory-p)))) t) ((and completion (zerop (length localname)) (memq operation (quote (expand-file-name file-name-as-directory)))) filename) (t (signal (car err) (cdr err)))))) (if foreign (condition-case err (let ((sf (symbol-function foreign))) (when (and (listp sf) (eq (car sf) (quote autoload))) (let ((default-directory (tramp-compat-temporary-file-directory))) (load (cadr sf) (quote noerror)))) (apply foreign operation args)) (quit (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" (append (list operation) args))) (signal (car err) (cdr err))) (error (cond ((and completion (zerop (length localname)) (memq operation (quote ...))) t) ((and completion (zerop (length localname)) (memq operation (quote ...))) filename) (t (signal (car err) (cdr err)))))) (tramp-run-real-handler operation args)) (let* ((v (tramp-dissect-file-name filename)) (method (tramp-file-name-method v)) (user (tramp-file-name-user v)) (host (tramp-file-name-host v)) (localname (tramp-file-name-localname v))) (if foreign (condition-case err (let ((sf (symbol-function foreign))) (when (and (listp sf) (eq (car sf) (quote autoload))) (let ((default-directory ...)) (load (cadr sf) (quote noerror)))) (apply foreign operation args)) (quit (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" (append (list operation) args))) (signal (car err) (cdr err))) (error (cond ((and completion (zerop ...) (memq operation ...)) t) ((and completion (zerop ...) (memq operation ...)) filename) (t (signal (car err) (cdr err)))))) (tramp-run-real-handler operation args))) (with-parsed-tramp-file-name filename nil (if foreign (condition-case err (let ((sf (symbol-function foreign))) (when (and (listp sf) (eq (car sf) (quote autoload))) (let ((default-directory ...)) (load (cadr sf) (quote noerror)))) (apply foreign operation args)) (quit (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" (append (list operation) args))) (signal (car err) (cdr err))) (error (cond ((and completion (zerop ...) (memq operation ...)) t) ((and completion (zerop ...) (memq operation ...)) filename) (t (signal (car err) (cdr err)))))) (tramp-run-real-handler operation args))) (let* ((filename (tramp-replace-environment-variables (apply (quote tramp-file-name-for-operation) operation args))) (completion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (with-parsed-tramp-file-name filename nil (if foreign (condition-case err (let ((sf (symbol-function foreign))) (when (and (listp sf) (eq ... ...)) (let (...) (load ... ...))) (apply foreign operation args)) (quit (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" (append ... args))) (signal (car err) (cdr err))) (error (cond ((and completion ... ...) t) ((and completion ... ...) filename) (t (signal ... ...))))) (tramp-run-real-handler operation args)))) (progn (let* ((filename (tramp-replace-environment-variables (apply (quote tramp-file-name-for-operation) operation args))) (completion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (with-parsed-tramp-file-name filename nil (if foreign (condition-case err (let ((sf ...)) (when (and ... ...) (let ... ...)) (apply foreign operation args)) (quit (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" ...)) (signal (car err) (cdr err))) (error (cond (... t) (... filename) (t ...)))) (tramp-run-real-handler operation args))))) (unwind-protect (progn (let* ((filename (tramp-replace-environment-variables (apply (quote tramp-file-name-for-operation) operation args))) (completion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (with-parsed-tramp-file-name filename nil (if foreign (condition-case err (let (...) (when ... ...) (apply foreign operation args)) (quit (let ... ...) (signal ... ...)) (error (cond ... ... ...))) (tramp-run-real-handler operation args))))) (set-match-data save-match-data-internal (quote evaporate))) (let ((save-match-data-internal (match-data))) (unwind-protect (progn (let* ((filename (tramp-replace-environment-variables (apply ... operation args))) (completion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (with-parsed-tramp-file-name filename nil (if foreign (condition-case err (let ... ... ...) (quit ... ...) (error ...)) (tramp-run-real-handler operation args))))) (set-match-data save-match-data-internal (quote evaporate)))) (save-match-data (let* ((filename (tramp-replace-environment-variables (apply (quote tramp-file-name-for-operation) operation args))) (completion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (with-parsed-tramp-file-name filename nil (if foreign (condition-case err (let ((sf ...)) (when (and ... ...) (let ... ...)) (apply foreign operation args)) (quit (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" ...)) (signal (car err) (cdr err))) (error (cond (... t) (... filename) (t ...)))) (tramp-run-real-handler operation args))))) (if tramp-mode (save-match-data (let* ((filename (tramp-replace-environment-variables (apply (quote tramp-file-name-for-operation) operation args))) (completion (tramp-completion-mode-p)) (foreign (tramp-find-foreign-file-name-handler filename))) (with-parsed-tramp-file-name filename nil (if foreign (condition-case err (let (...) (when ... ...) (apply foreign operation args)) (quit (let ... ...) (signal ... ...)) (error (cond ... ... ...))) (tramp-run-real-handler operation args))))) (tramp-run-real-handler operation args)) tramp-file-name-handler(copy-directory "/anonymous@ftp.host.name:/users/xxx/dir" "/tmp/dir" t nil) copy-directory("/anonymous@ftp.host.name:/users/xxx/dir" "/tmp/dir" t) dired-copy-file-recursive("/anonymous@ftp.host.name:/users/xxx/dir" "/tmp/dir" nil t t top) dired-copy-file("/anonymous@ftp.host.name:/users/xxx/dir" "/tmp/dir" nil)