From: Michael Albinus Date: Mon, 5 Mar 2007 06:41:59 +0000 (+0000) Subject: * net/tramp.el (tramp-make-temp-file): New parameter FILENAME. X-Git-Tag: emacs-pretest-22.0.96~257 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=bba31a09c8142439a135e9f43433f1c301eb863f;p=emacs.git * net/tramp.el (tramp-make-temp-file): New parameter FILENAME. Append its extension to the resulting temporary file name. (tramp-handle-file-local-copy, tramp-handle-write-region): Apply it. * net/tramp-smb.el (tramp-smb-handle-file-local-copy) (tramp-smb-handle-write-region): Apply it. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index ee2eb652ec4..9918a658a13 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,6 +1,16 @@ +2007-03-05 Michael Albinus + + * net/tramp.el (tramp-make-temp-file): New parameter FILENAME. + Append its extension to the resulting temporary file name. + (tramp-handle-file-local-copy, tramp-handle-write-region): Apply + it. + + * net/tramp-smb.el (tramp-smb-handle-file-local-copy) + (tramp-smb-handle-write-region): Apply it. + 2007-03-05 Alin C. Soare (tiny change) - * emacs-lisp/lisp-mode.el (calculate-lisp-indent): + * emacs-lisp/lisp-mode.el (calculate-lisp-indent): Redo previous change. 2007-03-04 Kevin Rodgers diff --git a/lisp/net/tramp-smb.el b/lisp/net/tramp-smb.el index dfe6216043e..5d5d441193d 100644 --- a/lisp/net/tramp-smb.el +++ b/lisp/net/tramp-smb.el @@ -384,7 +384,7 @@ KEEP-DATE is not handled in case NEWNAME resides on an SMB server." (save-excursion (let ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname t)) - (tmpfil (tramp-make-temp-file))) + (tmpfil (tramp-make-temp-file filename))) (unless (file-exists-p filename) (error "Cannot make local copy of non-existing file `%s'" filename)) (tramp-message-for-buffer @@ -595,7 +595,7 @@ Catches errors for shares like \"C$/\", which are common in Microsoft Windows." (curbuf (current-buffer)) tmpfil) ;; Write region into a tmp file. - (setq tmpfil (tramp-make-temp-file)) + (setq tmpfil (tramp-make-temp-file filename)) ;; We say `no-message' here because we don't want the visited file ;; modtime data to be clobbered from the temp file. We call ;; `set-visited-file-modtime' ourselves later on. diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 602c6d25eaa..7ff9b2d956b 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -3771,10 +3771,12 @@ This will break if COMMAND prints a newline, followed by the value of ;; File Editing. -(defsubst tramp-make-temp-file () - (funcall (if (fboundp 'make-temp-file) 'make-temp-file 'make-temp-name) - (expand-file-name tramp-temp-name-prefix - (tramp-temporary-file-directory)))) +(defsubst tramp-make-temp-file (filename) + (concat + (funcall (if (fboundp 'make-temp-file) 'make-temp-file 'make-temp-name) + (expand-file-name tramp-temp-name-prefix + (tramp-temporary-file-directory))) + (file-name-extension filename t))) (defun tramp-handle-file-local-copy (filename) "Like `file-local-copy' for tramp files." @@ -3794,7 +3796,7 @@ This will break if COMMAND prints a newline, followed by the value of (unless (file-exists-p filename) (error "Cannot make local copy of non-existing file `%s'" filename)) - (setq tmpfil (tramp-make-temp-file)) + (setq tmpfil (tramp-make-temp-file filename)) (cond ((tramp-method-out-of-band-p multi-method method user host) ;; `copy-file' handles out-of-band methods @@ -3846,7 +3848,7 @@ This will break if COMMAND prints a newline, followed by the value of (kill-buffer tmpbuf)) ;; If tramp-decoding-function is not defined for this ;; method, we invoke tramp-decoding-command instead. - (let ((tmpfil2 (tramp-make-temp-file))) + (let ((tmpfil2 (tramp-make-temp-file filename))) (write-region (point-min) (point-max) tmpfil2) (tramp-message 6 "Decoding remote file %s with command %s..." @@ -4053,7 +4055,7 @@ Returns a file name in `tramp-auto-save-directory' for autosaving this file." ;; Write region into a tmp file. This isn't really needed if we ;; use an encoding function, but currently we use it always ;; because this makes the logic simpler. - (setq tmpfil (tramp-make-temp-file)) + (setq tmpfil (tramp-make-temp-file filename)) ;; Set current buffer. If connection wasn't open, `file-modes' has ;; changed it accidently. (set-buffer curbuf)